FairMQ  1.4.33
C++ Message Queuing Library and Framework
Public Types | Public Member Functions | Static Public Member Functions | Friends | List of all members
fair::mq::Plugin Class Reference

Base class for FairMQ plugins. More...

#include <fairmq/Plugin.h>

Inheritance diagram for fair::mq::Plugin:
Inheritance graph
[legend]

Public Types

using ProgOptions = boost::optional< boost::program_options::options_description >
 
using Version = tools::Version
 
using DeviceState = fair::mq::PluginServices::DeviceState
 
using DeviceStateTransition = fair::mq::PluginServices::DeviceStateTransition
 

Public Member Functions

 Plugin (std::string name, Version version, std::string maintainer, std::string homepage, PluginServices *pluginServices)
 
 Plugin (const Plugin &)=delete
 
Plugin operator= (const Plugin &)=delete
 
auto GetName () const -> const std::string &
 
auto GetVersion () const -> const Version
 
auto GetMaintainer () const -> const std::string &
 
auto GetHomepage () const -> const std::string &
 
auto ToDeviceState (const std::string &state) const -> DeviceState
 
auto ToDeviceStateTransition (const std::string &transition) const -> DeviceStateTransition
 
auto ToStr (DeviceState state) const -> std::string
 
auto ToStr (DeviceStateTransition transition) const -> std::string
 
auto GetCurrentDeviceState () const -> DeviceState
 
auto TakeDeviceControl () -> void
 
auto StealDeviceControl () -> void
 
auto ReleaseDeviceControl () -> void
 
auto ChangeDeviceState (const DeviceStateTransition next) -> bool
 
auto SubscribeToDeviceStateChange (std::function< void(DeviceState)> callback) -> void
 
auto UnsubscribeFromDeviceStateChange () -> void
 
auto PropertyExists (const std::string &key) -> int
 
template<typename T >
GetProperty (const std::string &key) const
 
template<typename T >
GetProperty (const std::string &key, const T &ifNotFound) const
 
std::string GetPropertyAsString (const std::string &key) const
 
std::string GetPropertyAsString (const std::string &key, const std::string &ifNotFound) const
 
fair::mq::Properties GetProperties (const std::string &q) const
 
fair::mq::Properties GetPropertiesStartingWith (const std::string &q) const
 
std::map< std::string, std::string > GetPropertiesAsString (const std::string &q) const
 
std::map< std::string, std::string > GetPropertiesAsStringStartingWith (const std::string &q) const
 
auto GetChannelInfo () const -> std::unordered_map< std::string, int >
 
auto GetPropertyKeys () const -> std::vector< std::string >
 
template<typename T >
auto SetProperty (const std::string &key, T val) -> void
 
void SetProperties (const fair::mq::Properties &props)
 
template<typename T >
bool UpdateProperty (const std::string &key, T val)
 
bool UpdateProperties (const fair::mq::Properties &input)
 
void DeleteProperty (const std::string &key)
 
template<typename T >
auto SubscribeToPropertyChange (std::function< void(const std::string &key, T newValue)> callback) -> void
 
template<typename T >
auto UnsubscribeFromPropertyChange () -> void
 
auto SubscribeToPropertyChangeAsString (std::function< void(const std::string &key, std::string newValue)> callback) -> void
 
auto UnsubscribeFromPropertyChangeAsString () -> void
 
auto CycleLogConsoleSeverityUp () -> void
 
auto CycleLogConsoleSeverityDown () -> void
 
auto CycleLogVerbosityUp () -> void
 
auto CycleLogVerbosityDown () -> void
 

Static Public Member Functions

static auto NoProgramOptions () -> ProgOptions
 

Friends

auto operator== (const Plugin &lhs, const Plugin &rhs) -> bool
 
auto operator!= (const Plugin &lhs, const Plugin &rhs) -> bool
 
auto operator<< (std::ostream &os, const Plugin &p) -> std::ostream &
 

Detailed Description

Base class for FairMQ plugins.

The plugin base class encapsulates the plugin metadata.


The documentation for this class was generated from the following files:

privacy