RSB  0.19.0
rsb::introspection::IntrospectionSender Class Reference

Instances of this class publish information about the local host, the current process and its participants for consumption by introspection receivers. More...

#include <IntrospectionSender.h>

Collaboration diagram for rsb::introspection::IntrospectionSender:
Collaboration graph

Public Member Functions

 IntrospectionSender (boost::shared_ptr< std::string > processDisplayName, const ParticipantConfig &listenerConfig=getFactory().getDefaultParticipantConfig(), const ParticipantConfig &informerConfig=getFactory().getDefaultParticipantConfig())
 
void addParticipant (ParticipantPtr participant, ParticipantPtr parent)
 
bool removeParticipant (const Participant &participant)
 

Private Types

typedef std::vector< ParticipantInfoParticipantList
 

Private Member Functions

void sendHello (const ParticipantInfo &participant, EventPtr query=EventPtr())
 
void sendBye (const ParticipantInfo &participant)
 

Private Attributes

rsc::logging::LoggerPtr logger
 
boost::mutex mutex
 
boost::shared_ptr< std::string > processDisplayName
 
ParticipantList participants
 
ProcessInfo process
 
HostInfo host
 
ListenerPtr listener
 
InformerBasePtr informer
 
rsb::patterns::LocalServerPtr server
 

Friends

struct QueryHandler
 

Detailed Description

Instances of this class publish information about the local host, the current process and its participants for consumption by introspection receivers.

Author
jmoringe

Definition at line 57 of file IntrospectionSender.h.

Member Typedef Documentation

Constructor & Destructor Documentation

rsb::introspection::IntrospectionSender::IntrospectionSender ( boost::shared_ptr< std::string >  processDisplayName,
const ParticipantConfig listenerConfig = getFactory().getDefaultParticipantConfig(),
const ParticipantConfig informerConfig = getFactory().getDefaultParticipantConfig() 
)

Definition at line 133 of file IntrospectionSender.cpp.

References listener, QueryHandler, and server.

Member Function Documentation

void rsb::introspection::IntrospectionSender::addParticipant ( ParticipantPtr  participant,
ParticipantPtr  parent 
)

Definition at line 150 of file IntrospectionSender.cpp.

References logger, mutex, participants, and sendHello().

Here is the call graph for this function:

bool rsb::introspection::IntrospectionSender::removeParticipant ( const Participant participant)

Definition at line 167 of file IntrospectionSender.cpp.

References rsb::Participant::getId(), logger, mutex, participants, sendBye(), and rsb::introspection::UNIX_EPOCH.

Here is the call graph for this function:

void rsb::introspection::IntrospectionSender::sendBye ( const ParticipantInfo participant)
private

Definition at line 268 of file IntrospectionSender.cpp.

References rsb::introspection::ParticipantInfo::getId(), and informer.

Referenced by removeParticipant().

Here is the call graph for this function:

Here is the caller graph for this function:

Friends And Related Function Documentation

friend struct QueryHandler
friend

Definition at line 58 of file IntrospectionSender.h.

Referenced by IntrospectionSender().

Member Data Documentation

HostInfo rsb::introspection::IntrospectionSender::host
private

Definition at line 81 of file IntrospectionSender.h.

Referenced by sendHello().

InformerBasePtr rsb::introspection::IntrospectionSender::informer
private
ListenerPtr rsb::introspection::IntrospectionSender::listener
private

Definition at line 83 of file IntrospectionSender.h.

Referenced by IntrospectionSender().

rsc::logging::LoggerPtr rsb::introspection::IntrospectionSender::logger
private
boost::mutex rsb::introspection::IntrospectionSender::mutex
private
ProcessInfo rsb::introspection::IntrospectionSender::process
private

Definition at line 80 of file IntrospectionSender.h.

Referenced by sendHello().

boost::shared_ptr<std::string> rsb::introspection::IntrospectionSender::processDisplayName
private

Definition at line 77 of file IntrospectionSender.h.

Referenced by sendHello().

rsb::patterns::LocalServerPtr rsb::introspection::IntrospectionSender::server
private

Definition at line 86 of file IntrospectionSender.h.

Referenced by IntrospectionSender().


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