RSB
0.16.1
|
Objects of this class participate in the exchange of notifications on one channel of the bus. More...
#include <Participant.h>
Classes | |
class | Impl |
Public Member Functions | |
virtual | ~Participant () |
void | printContents (std::ostream &stream) const |
virtual std::string | getKind () const =0 |
Return the kind of the participant. More... | |
rsc::misc::UUID | getId () const |
Returns the unique id of the participant. More... | |
ScopePtr | getScope () const |
Returns the scope of this participant. More... | |
ParticipantConfig | getConfig () const |
Returns a copy of the participant's configuration. More... | |
virtual const std::set< std::string > | getTransportURLs () const =0 |
TODO. More... | |
Protected Member Functions | |
Participant (const Scope &scope, const ParticipantConfig &config) | |
Private Member Functions | |
void | setSignalParticipantDestroyed (SignalParticipantDestroyedPtr signal) |
Private Attributes | |
boost::scoped_ptr< Impl > | d |
Friends | |
class | Factory |
Objects of this class participate in the exchange of notifications on one channel of the bus.
Since each channel is identified by scope, each rsb::Participant has an associated scope. On the other hand, scopes do not uniquely identify rsb::Participant s since zero, one or more of these can participate in the exchange of any given scope. For this reason, each rsb::Participant has a unique id.
Definition at line 65 of file Participant.h.
|
virtual |
Definition at line 53 of file Participant.cpp.
References d.
|
protected |
Definition at line 45 of file Participant.cpp.
References d.
ParticipantConfig rsb::Participant::getConfig | ( | ) | const |
Returns a copy of the participant's configuration.
Definition at line 68 of file Participant.cpp.
References d.
Referenced by rsb::Listener::initialize().
rsc::misc::UUID rsb::Participant::getId | ( | ) | const |
Returns the unique id of the participant.
Definition at line 60 of file Participant.cpp.
References d.
Referenced by rsb::introspection::IntrospectionSender::removeParticipant(), and rsb::InformerBase::uncheckedPublish().
|
pure virtual |
Return the kind of the participant.
Examples include "informer"
, "listener"
and "reader"
.
Implemented in rsb::patterns::LocalServer<>, rsb::patterns::LocalServer<>::LocalMethod, rsb::patterns::RemoteServer, rsb::InformerBase, rsb::Listener, rsb::patterns::RemoteServer::RemoteMethod, and rsb::Reader.
ScopePtr rsb::Participant::getScope | ( | ) | const |
Returns the scope of this participant.
Definition at line 64 of file Participant.cpp.
References d.
Referenced by rsb::patterns::RemoteServer::RemoteMethod::call(), rsb::InformerBase::checkedPublish(), rsb::InformerBase::createEvent(), rsb::patterns::RemoteServer::getMethod(), rsb::patterns::LocalServer<>::LocalMethod::handle(), rsb::patterns::Method::makeInformer(), rsb::patterns::Method::makeListener(), and rsb::patterns::LocalServer<>::registerMethod().
|
pure virtual |
TODO.
Implemented in rsb::patterns::LocalServer<>, rsb::patterns::RemoteServer, rsb::InformerBase, rsb::Listener, rsb::Reader, and rsb::patterns::Method.
void rsb::Participant::printContents | ( | std::ostream & | stream | ) | const |
Definition at line 72 of file Participant.cpp.
References d.
Referenced by rsb::InformerBase::printContents().
|
private |
Definition at line 76 of file Participant.cpp.
References d.
|
friend |
Definition at line 67 of file Participant.h.
|
private |
Definition at line 115 of file Participant.h.
Referenced by getConfig(), getId(), getScope(), Participant(), printContents(), setSignalParticipantDestroyed(), and ~Participant().