32 #include <boost/shared_ptr.hpp> 33 #include <boost/scoped_ptr.hpp> 34 #include <boost/noncopyable.hpp> 36 #include <boost/signals2.hpp> 38 #include <rsc/misc/UUID.h> 39 #include <rsc/runtime/Printable.h> 41 #include "rsb/rsbexports.h" 52 typedef boost::shared_ptr<Scope>
ScopePtr;
65 class RSB_EXPORT
Participant:
public virtual rsc::runtime::Printable,
66 public boost::noncopyable {
72 void printContents(std::ostream& stream)
const;
81 virtual std::string getKind()
const = 0;
88 rsc::misc::UUID getId()
const;
95 ScopePtr getScope()
const;
107 virtual const std::set<std::string> getTransportURLs()
const = 0;
116 boost::scoped_ptr<Impl>
d;
118 void setSignalParticipantDestroyed(SignalParticipantDestroyedPtr signal);
boost::shared_ptr< Scope > ScopePtr
Objects of this class participate in the exchange of notifications on one channel of the bus...
boost::signals2::signal< void(Participant *)> SignalParticipantDestroyed
boost::shared_ptr< Participant > ParticipantPtr
Factory for RSB user-level domain objects for communication patterns.
A class describing the configuration of Participant instances.
boost::scoped_ptr< Impl > d
boost::shared_ptr< SignalParticipantDestroyed > SignalParticipantDestroyedPtr
Scope is a descriptor for a hierarchical channel of the unified bus.