48 #ifndef _MIRA_REMOTEAUTHORITY_H_ 49 #define _MIRA_REMOTEAUTHORITY_H_ 58 class RemoteAuthority;
59 class RemoteAuthorityPropertyNode;
76 void scheduleUpdate(
const std::string& authorityID, RemoteAuthorityPropertyNode* property);
84 boost::thread mThread;
86 boost::condition_variable mSignal;
88 std::deque<std::pair<std::string,RemoteAuthorityPropertyNode*>> mPendingProperties;
172 virtual void start();
195 boost::shared_ptr<RemoteAuthorityPropertyNode> mRemoteProperties;
197 Time mRemotePropertiesTimestamp;
198 bool mRemotePropertyValuesQueried;
200 bool mHasServiceInterfaceQueryMethod;
201 bool mHasExtendedPropertyJSONBatchQueryMethod;
Abstract base class for all derived property node classes.
Definition: PropertyNode.h:202
virtual std::set< std::string > getPublishedChannels()
Returns all published channels by this authority (and its sub-authorities)
virtual boost::shared_ptr< PropertyNode > getProperties()
Returns the main property node of this Authority.
RemoteAuthority * authority
Definition: RemoteAuthority.h:122
void scheduleUpdate(const std::string &authorityID, RemoteAuthorityPropertyNode *property)
Schedule an update of a remote property.
virtual ChannelNameMapping getSubscribedChannelNames()
Returns all subscribed channels (pair of global and local names) by this authority (and its sub-autho...
specialize cv::DataType for our ImgPixel and inherit from cv::DataType<Vec>
Definition: IOService.h:67
RemoteAuthority(const AuthorityDescription &desc)
virtual NodeList & children()
Returns a vector with all child property nodes.
Definition: PropertyNode.h:230
virtual ChannelNameMapping getPublishedChannelNames()
Returns all published channels (pair of global and local names) by this authority (and its sub-author...
std::multimap< std::string, Status > StatusMap
Definition: Status.h:295
Provided for convenience.
Definition: Singleton.h:564
RemoteAuthorityRootPropertyNode(RemoteAuthority *iAuthority, RemoteAuthorityPropertyUpdater &iUpdater)
Definition: RemoteAuthority.h:95
std::map< std::string, Status > ChannelStatusMap
Definition: AbstractAuthority.h:141
Abstract base class of authorities.
void synchronizeProperties()
virtual std::set< std::string > getServiceInterfaces()
Returns all service interfaces provided by this authority.
virtual bool hasUnrecoverableFailure() const
Returns true, if there was a failure while processing the immediate handlers.
Wrapper class for boost::posix_time::ptime for adding more functionality to it.
Definition: Time.h:416
This is the descriptive part of an authority.
Definition: AuthorityDescription.h:61
virtual bool isStarted() const
Returns true, if the authority was started (by calling start()).
Definition: RemoteAuthority.h:91
A special node that acts only as (empty) root node for a property tree.
Definition: PropertyNode.h:448
RemoteAuthorityPropertyUpdater()
virtual std::set< std::string > getSubscribedChannels()
Returns all subscribed channels by this authority (and its sub-authorities)
~RemoteAuthorityPropertyUpdater()
virtual StatusManager::StatusMap getStatusMap()
Return a status map that contains the status of the authority as well as all registered submodules...
Definition: RemoteAuthority.h:63
const PropertyNode * getRootProperty() const
Definition: RemoteAuthority.h:102
virtual ChannelStatusMap getSubscribedChannelStatus()
Returns status for all subscribed channels (ok, no publisher, no data, ...) by this authority (and it...
RemoteAuthorityPropertyUpdater & getUpdater() const
Definition: RemoteAuthority.h:119
virtual void stop()
Stops/Pauses the authority. To continue call start().
virtual void start()
Starts/Resumes the authority.
bool needSynchronizeProperties()
virtual bool isRunning() const
Return if the authority is running.
RemoteAuthorityPropertyUpdater & updater
Definition: RemoteAuthority.h:123
This is the abstract base class of local and remote authority classes.
Definition: AbstractAuthority.h:76
A remote authority is located in another framework.
Definition: RemoteAuthority.h:143
virtual ~RemoteAuthority()
const RemoteAuthority * getAuthority() const
Definition: RemoteAuthority.h:116
Defines and constants for the framework.
RemoteAuthority * getAuthority()
Definition: RemoteAuthority.h:117
std::multimap< std::string, std::string > ChannelNameMapping
Definition: AbstractAuthority.h:139
Helper class that is able to hold a complete property tree structure.
Definition: PropertyTree.h:86
void removeScheduledUpdates(RemoteAuthorityPropertyNode *property)
PropertyNode * getRootProperty()
Definition: RemoteAuthority.h:110