Feature #1827
Feature #44: Implement basic introspection support
Initial support for participant hierarchies
Status: | Resolved | Start date: | 04/01/2014 | |
---|---|---|---|---|
Priority: | Normal | Due date: | ||
Assignee: | J. Moringen | % Done: | 100% | |
Category: | C++ | |||
Target version: | rsb-0.11 |
Associated revisions
Support participant hierarchies in src/rsb/**/*.{h,cpp}
fixes #1827
Each Factory::create* method accepts a parent participant as an optional
parameter. If supplied, this parent is passed to the
SignalParticipantCreated and thus available to the introspection
subsystem.
- src/rsb/Factory.{h,cpp} (SignalParticipantCreated): added parent
parameter
(Factory::createInformer): added parent participant parameter; pass to
signalParticipantCreated; extended documentation comment
(Factory::createListener): similar
(Factory::createReader): similar
(Factory::createLocalServer): similar
(Factory::createServer): similar
(Factory::createRemoteServer): similar - src/rsb/introspection/Model.{h,cpp} (ParticipantInfo::parentId): new
member variable; store id of parent participant
(ParticipantInfo::getParentId): new method; return id of parent
participant
(ParticipantInfo::ParticipantInfo): added parentId parameter - src/rsb/introspection/IntrospectionSender.{h,cpp}
(IntrospectionSender::addParticipant): added parent participant
parameter; store its id in the created ParticipantInfo object
(IntrospectionSender::sendHello):send id of parent participant if any - src/rsb/introspection/Plugin.cpp (handleParticipantCreated): added
parent participant parameter; pass to
IntrospectionSender::addParticipant - src/rsb/patterns/Server.{h,cpp} (Method): added Handler and
enable_shared_from_this base classes
(Method::makeListener): pass shared_ptr to this as parent to
Factory::createListener
(Method::makeInformer): similar - src/rsb/patterns/LocalServer.{h,cpp} (LocalMethod): removed Handler
and enable_shared_from_this base classes
(LocalServer): added enable_shared_from_this base class
(LocalServer::registerMethod): pass shared_ptr to this as parent to
signalParticipantCreated - src/rsb/patterns/RemoteServer.{h,cpp} (RemoteMethod): removed Handler
and enable_shared_from_this base classes
(RemoteServer): added enable_shared_from_this base class
(RemoteServer::getMethod): pass shared_ptr to this as parent to
signalParticipantCreated
Support participant hierarchies in src/rsb/**/*.{h,cpp}
fixes #1827
Each Factory::create* method accepts a parent participant as an optional
parameter. If supplied, this parent is passed to the
SignalParticipantCreated and thus available to the introspection
subsystem.
- src/rsb/Factory.{h,cpp} (SignalParticipantCreated): added parent
parameter
(Factory::createInformer): added parent participant parameter; pass to
signalParticipantCreated; extended documentation comment
(Factory::createListener): similar
(Factory::createReader): similar
(Factory::createLocalMethod): similar
(Factory::createLocalServer): similar
(Factory::createServer): similar
(Factory::createRemoteMethod): similar
(Factory::createRemoteServer): similar - src/rsb/introspection/Model.{h,cpp} (ParticipantInfo::parentId): new
member variable; store id of parent participant
(ParticipantInfo::getParentId): new method; return id of parent
participant
(ParticipantInfo::ParticipantInfo): added parentId parameter - src/rsb/introspection/IntrospectionSender.{h,cpp}
(IntrospectionSender::addParticipant): added parent participant
parameter; store its id in the created ParticipantInfo object
(IntrospectionSender::sendHello):send id of parent participant if any - src/rsb/introspection/Plugin.cpp (handleParticipantCreated): added
parent participant parameter; pass to
IntrospectionSender::addParticipant - src/rsb/patterns/Server.{h,cpp} (Method): added Handler and
enable_shared_from_this base classes
(Method::makeListener): pass shared_ptr to this as parent to
Factory::createListener
(Method::makeInformer): similar - src/rsb/patterns/LocalServer.{h,cpp} (LocalMethod): removed Handler
and enable_shared_from_this base classes
(LocalServer): added enable_shared_from_this base class
(LocalServer::registerMethod): pass shared_ptr to this as parent to
Factory::createLocalMethod - src/rsb/patterns/RemoteServer.{h,cpp} (RemoteMethod): removed Handler
and enable_shared_from_this base classes
(RemoteServer): added enable_shared_from_this base class
(RemoteServer::getMethod): pass shared_ptr to this as parent to
Factory::createRemoteMethod
Reviewed-by: Johannes Wienke <jwienke@techfak.uni-bielefeld.de>
History
#1 Updated by J. Moringen over 9 years ago
- Status changed from In Progress to Resolved
- % Done changed from 80 to 100
Applied in changeset rsb-cpp|9ac95e11ddd3d0876a1bce53393b054b2ad7e5ff.