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;
107 virtual const std::set<std::string> getTransportURLs()
const = 0;
116 boost::scoped_ptr<Impl>
d;
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.