OpenDDS
Snapshot(2023/04/28-20:55)
|
#include <UpdateManager.h>
Public Member Functions | |
Manager () | |
virtual | ~Manager () |
virtual int | init (int argc, ACE_TCHAR *argv[]) |
Shared object initializer. More... | |
virtual int | fini () |
Shared object finalizer. More... | |
void | add (TAO_DDS_DCPSInfo_i *info) |
void | add (Updater *updater) |
void | remove () |
void | remove (const Updater *updater) |
void | requestImage () |
Force a clean shutdown. More... | |
void | pushImage (const DImage &image) |
Downstream request to push image. More... | |
template<class UType > | |
void | create (const UType &info) |
template<class QosType > | |
void | update (const IdPath &id, const QosType &qos) |
void | destroy (const IdPath &id, ItemType type, ActorType actor=DataWriter) |
void | add (const DTopic &topic) |
void | add (const DParticipant &participant) |
void | add (const DActor &actor) |
virtual void | updateLastPartId (PartIdType partId) |
Update Last Participant Id for the repo. More... | |
![]() | |
ACE_Service_Object (ACE_Reactor *=0) | |
virtual | ~ACE_Service_Object (void) |
virtual int | suspend (void) |
virtual int | resume (void) |
![]() | |
virtual | ~ACE_Event_Handler (void) |
virtual ACE_HANDLE | get_handle (void) const |
virtual void | set_handle (ACE_HANDLE) |
virtual int | priority (void) const |
virtual void | priority (int priority) |
virtual int | handle_input (ACE_HANDLE fd=ACE_INVALID_HANDLE) |
virtual int | handle_output (ACE_HANDLE fd=ACE_INVALID_HANDLE) |
virtual int | handle_exception (ACE_HANDLE fd=ACE_INVALID_HANDLE) |
virtual int | handle_timeout (const ACE_Time_Value ¤t_time, const void *act=0) |
virtual int | handle_exit (ACE_Process *) |
virtual int | handle_close (ACE_HANDLE handle, ACE_Reactor_Mask close_mask) |
virtual int | handle_signal (int signum, siginfo_t *=0, ucontext_t *=0) |
virtual int | resume_handler (void) |
virtual int | handle_qos (ACE_HANDLE=ACE_INVALID_HANDLE) |
virtual int | handle_group_qos (ACE_HANDLE=ACE_INVALID_HANDLE) |
virtual void | reactor (ACE_Reactor *reactor) |
virtual ACE_Reactor * | reactor (void) const |
virtual ACE_Reactor_Timer_Interface * | reactor_timer_interface (void) const |
virtual Reference_Count | add_reference (void) |
virtual Reference_Count | remove_reference (void) |
Reference_Counting_Policy & | reference_counting_policy (void) |
![]() | |
ACE_Shared_Object (void) | |
virtual | ~ACE_Shared_Object (void) |
virtual int | info (ACE_TCHAR **info_string, size_t length=0) const |
Private Types | |
typedef std::set< Updater * > | Updaters |
Private Attributes | |
TAO_DDS_DCPSInfo_i * | info_ |
Updaters | updaters_ |
Definition at line 32 of file UpdateManager.h.
|
private |
Definition at line 83 of file UpdateManager.h.
Update::Manager::Manager | ( | ) |
Definition at line 22 of file UpdateManager.cpp.
|
virtual |
Definition at line 27 of file UpdateManager.cpp.
void Update::Manager::add | ( | TAO_DDS_DCPSInfo_i * | info | ) |
Definition at line 32 of file UpdateManager.cpp.
References ACE_Shared_Object::info(), and info_.
Referenced by TAO_DDS_DCPSInfo_i::add(), Update::PersistenceUpdater::init(), and TAO_DDS_DCPSInfo_i::init_persistence().
void Update::Manager::add | ( | Updater * | updater | ) |
void Update::Manager::add | ( | const DTopic & | topic | ) |
Definition at line 315 of file UpdateManager.cpp.
References TAO_DDS_DCPSInfo_i::add_topic(), Update::TopicStrt< Q, S >::dataType, Update::TopicStrt< Q, S >::domainId, info_, Update::TopicStrt< Q, S >::name, Update::TopicStrt< Q, S >::participantId, Update::TopicStrt< Q, S >::topicId, and Update::TopicStrt< Q, S >::topicQos.
void Update::Manager::add | ( | const DParticipant & | participant | ) |
Definition at line 335 of file UpdateManager.cpp.
References TAO_DDS_DCPSInfo_i::add_domain_participant(), Update::ParticipantStrt< QosSeq >::domainId, info_, Update::ParticipantStrt< QosSeq >::participantId, and Update::ParticipantStrt< QosSeq >::participantQos.
void Update::Manager::add | ( | const DActor & | actor | ) |
Definition at line 355 of file UpdateManager.cpp.
References Update::ActorStrt< PSQ, RWQ, C, T, CSP, STI >::actorId, TAO_DDS_DCPSInfo_i::add_publication(), TAO_DDS_DCPSInfo_i::add_subscription(), Update::ActorStrt< PSQ, RWQ, C, T, CSP, STI >::callback, Update::ActorStrt< PSQ, RWQ, C, T, CSP, STI >::contentSubscriptionProfile, Update::DataReader, Update::DataWriter, Update::ActorStrt< PSQ, RWQ, C, T, CSP, STI >::domainId, Update::ActorStrt< PSQ, RWQ, C, T, CSP, STI >::drdwQos, Update::ContentSubscriptionInfo::exprParams, Update::ContentSubscriptionInfo::filterClassName, Update::ContentSubscriptionInfo::filterExpr, info_, Update::ActorStrt< PSQ, RWQ, C, T, CSP, STI >::participantId, Update::ActorStrt< PSQ, RWQ, C, T, CSP, STI >::pubsubQos, Update::ActorStrt< PSQ, RWQ, C, T, CSP, STI >::serializedTypeInfo, Update::ActorStrt< PSQ, RWQ, C, T, CSP, STI >::topicId, Update::ActorStrt< PSQ, RWQ, C, T, CSP, STI >::transportContext, Update::ActorStrt< PSQ, RWQ, C, T, CSP, STI >::transportInterfaceInfo, and Update::ActorStrt< PSQ, RWQ, C, T, CSP, STI >::type.
void Update::Manager::create | ( | const UType & | info | ) |
Definition at line 12 of file UpdateManager_T.cpp.
References updaters_.
Referenced by TAO_DDS_DCPSInfo_i::add_publication(), TAO_DDS_DCPSInfo_i::add_subscription(), TAO_DDS_DCPSInfo_i::assert_topic(), and DCPS_IR_Participant::takeOwnership().
void Update::Manager::destroy | ( | const IdPath & | id, |
ItemType | type, | ||
ActorType | actor = DataWriter |
||
) |
Definition at line 304 of file UpdateManager.cpp.
References updaters_.
Referenced by DCPS_IR_Participant::remove_all_dependents(), TAO_DDS_DCPSInfo_i::remove_domain_participant(), TAO_DDS_DCPSInfo_i::remove_publication(), TAO_DDS_DCPSInfo_i::remove_subscription(), and TAO_DDS_DCPSInfo_i::remove_topic().
|
virtual |
Shared object finalizer.
Reimplemented from ACE_Shared_Object.
Definition at line 72 of file UpdateManager.cpp.
|
virtual |
Shared object initializer.
Reimplemented from ACE_Shared_Object.
Definition at line 66 of file UpdateManager.cpp.
void Update::Manager::pushImage | ( | const DImage & | image | ) |
Downstream request to push image.
Definition at line 112 of file UpdateManager.cpp.
References ACE_ERROR, ACE_NEW_NORETURN, Update::ActorStrt< PSQ, RWQ, C, T, CSP, STI >::actorId, Update::ImageData< T, P, A, W >::actors, Update::ActorStrt< PSQ, RWQ, C, T, CSP, STI >::callback, Update::ActorStrt< PSQ, RWQ, C, T, CSP, STI >::contentSubscriptionProfile, Update::DataReader, Update::TopicStrt< Q, S >::dataType, Update::DataWriter, Update::TopicStrt< Q, S >::domainId, Update::ParticipantStrt< QosSeq >::domainId, Update::ActorStrt< PSQ, RWQ, C, T, CSP, STI >::domainId, Update::ActorStrt< PSQ, RWQ, C, T, CSP, STI >::drdwQos, Update::ContentSubscriptionInfo::exprParams, Update::ContentSubscriptionInfo::filterClassName, Update::ContentSubscriptionInfo::filterExpr, info_, Update::ImageData< T, P, A, W >::lastPartId, LM_ERROR, Update::TopicStrt< Q, S >::name, Update::ParticipantStrt< QosSeq >::owner, Update::TopicStrt< Q, S >::participantId, Update::ParticipantStrt< QosSeq >::participantId, Update::ActorStrt< PSQ, RWQ, C, T, CSP, STI >::participantId, Update::ParticipantStrt< QosSeq >::participantQos, Update::ImageData< T, P, A, W >::participants, Update::ActorStrt< PSQ, RWQ, C, T, CSP, STI >::pubsubQos, TAO_DDS_DCPSInfo_i::receive_image(), Update::SeqGuard< T >::seq(), Update::ActorStrt< PSQ, RWQ, C, T, CSP, STI >::serializedTypeInfo, Update::TopicStrt< Q, S >::topicId, Update::ActorStrt< PSQ, RWQ, C, T, CSP, STI >::topicId, Update::TopicStrt< Q, S >::topicQos, Update::ImageData< T, P, A, W >::topics, Update::ActorStrt< PSQ, RWQ, C, T, CSP, STI >::transportContext, Update::ActorStrt< PSQ, RWQ, C, T, CSP, STI >::transportInterfaceInfo, Update::ActorStrt< PSQ, RWQ, C, T, CSP, STI >::type, and Update::ImageData< T, P, A, W >::wActors.
Referenced by Update::PersistenceUpdater::requestImage().
void Update::Manager::remove | ( | void | ) |
void Update::Manager::remove | ( | const Updater * | updater | ) |
void Update::Manager::requestImage | ( | ) |
Force a clean shutdown.
Upstream request for a fresh image Currently handled synchronously via 'pushImage' TBD: Replace with an asynchronous model.
Definition at line 78 of file UpdateManager.cpp.
References updaters_.
Referenced by TAO_DDS_DCPSInfo_i::init_persistence().
void Update::Manager::update | ( | const IdPath & | id, |
const QosType & | qos | ||
) |
Definition at line 24 of file UpdateManager_T.cpp.
References updaters_.
Referenced by TAO_DDS_DCPSInfo_i::update_domain_participant_qos(), TAO_DDS_DCPSInfo_i::update_publication_qos(), TAO_DDS_DCPSInfo_i::update_subscription_params(), TAO_DDS_DCPSInfo_i::update_subscription_qos(), and TAO_DDS_DCPSInfo_i::update_topic_qos().
|
virtual |
Update Last Participant Id for the repo.
Definition at line 419 of file UpdateManager.cpp.
References updaters_.
|
private |
Definition at line 88 of file UpdateManager.h.
Referenced by add(), pushImage(), and remove().
|
private |
Definition at line 89 of file UpdateManager.h.
Referenced by add(), create(), destroy(), remove(), requestImage(), update(), and updateLastPartId().