#include <FederatorManagerImpl.h>
Inheritance diagram for OpenDDS::Federator::ManagerImpl:


Public Member Functions | |
| ManagerImpl (Config &config) | |
| Default constructor. | |
| virtual | ~ManagerImpl () |
| Virtual destructor. | |
| virtual ::CORBA::Boolean | discover_federation (const char *ior) throw ( ::CORBA::SystemException, Incomplete ) |
| virtual Manager_ptr | join_federation (Manager_ptr peer, FederationDomain federation) throw ( ::CORBA::SystemException, Incomplete ) |
| virtual void | leave_federation (RepoKey id) throw ( ::CORBA::SystemException, Incomplete ) |
| virtual RepoKey | federation_id (void) throw ( ::CORBA::SystemException ) |
| virtual ::OpenDDS::DCPS::DCPSInfo_ptr | repository (void) throw ( ::CORBA::SystemException ) |
| virtual void | initializeOwner (const ::OpenDDS::Federator::OwnerUpdate &data) throw ( ::CORBA::SystemException, ::OpenDDS::Federator::Incomplete ) |
| virtual void | initializeTopic (const ::OpenDDS::Federator::TopicUpdate &data) throw ( ::CORBA::SystemException, ::OpenDDS::Federator::Incomplete ) |
| virtual void | initializeParticipant (const ::OpenDDS::Federator::ParticipantUpdate &data) throw ( ::CORBA::SystemException, ::OpenDDS::Federator::Incomplete ) |
| virtual void | initializePublication (const ::OpenDDS::Federator::PublicationUpdate &data) throw ( ::CORBA::SystemException, ::OpenDDS::Federator::Incomplete ) |
| virtual void | initializeSubscription (const ::OpenDDS::Federator::SubscriptionUpdate &data) throw ( ::CORBA::SystemException, ::OpenDDS::Federator::Incomplete ) |
| virtual void | leave_and_shutdown (void) throw ( ::CORBA::SystemException, Incomplete ) |
| virtual void | shutdown (void) throw ( ::CORBA::SystemException, Incomplete ) |
| void | initialize () |
| Establish the update publications and subscriptions. | |
| void | finalize () |
| Release resources gracefully. | |
| TAO_DDS_DCPSInfo_i *& | info () |
| Accessors for the DCPSInfo reference. | |
| TAO_DDS_DCPSInfo_i * | info () const |
| void | localRepo (::OpenDDS::DCPS::DCPSInfo_ptr repo) |
| Capture a remote callable reference to the DCPSInfo. | |
| RepoKey & | id () |
| Accessors for the federation Id value. | |
| RepoKey | id () const |
| CORBA::ORB_ptr | orb () |
| Accessors for the ORB. | |
| void | orb (CORBA::ORB_ptr value) |
| void | pushState (Manager_ptr peer) |
| Push our current state to a remote repository. | |
| void | processDeferred () |
| Handle any deferred updates that might have become processable. | |
| virtual void | unregisterCallback () |
| virtual void | requestImage () |
| virtual void | create (const Update::UTopic &topic) |
| virtual void | create (const Update::UParticipant &participant) |
| virtual void | create (const Update::URActor &reader) |
| virtual void | create (const Update::UWActor &writer) |
| virtual void | create (const Update::OwnershipData &data) |
| virtual void | update (const Update::IdPath &id, const ::DDS::DomainParticipantQos &qos) |
| virtual void | update (const Update::IdPath &id, const ::DDS::TopicQos &qos) |
| virtual void | update (const Update::IdPath &id, const ::DDS::DataWriterQos &qos) |
| virtual void | update (const Update::IdPath &id, const ::DDS::PublisherQos &qos) |
| virtual void | update (const Update::IdPath &id, const ::DDS::DataReaderQos &qos) |
| virtual void | update (const Update::IdPath &id, const ::DDS::SubscriberQos &qos) |
| virtual void | destroy (const Update::IdPath &id, Update::ItemType type, Update::ActorType actor) |
| void | processCreate (const OwnerUpdate *sample, const ::DDS::SampleInfo *info) |
| Null implementation for OwnerUpdate samples. | |
| void | processCreate (const PublicationUpdate *sample, const ::DDS::SampleInfo *info) |
| Create a proxy for a new publication. | |
| void | processCreate (const SubscriptionUpdate *sample, const ::DDS::SampleInfo *info) |
| Create a proxy for a new subscription. | |
| void | processCreate (const ParticipantUpdate *sample, const ::DDS::SampleInfo *info) |
| Create a proxy for a new participant. | |
| void | processCreate (const TopicUpdate *sample, const ::DDS::SampleInfo *info) |
| Create a proxy for a new topic. | |
| void | processUpdateQos1 (const OwnerUpdate *sample, const ::DDS::SampleInfo *info) |
| Process ownership changes. | |
| void | processUpdateQos1 (const PublicationUpdate *sample, const ::DDS::SampleInfo *info) |
| Update the proxy DataWriterQos for a publication. | |
| void | processUpdateQos2 (const PublicationUpdate *sample, const ::DDS::SampleInfo *info) |
| Update the proxy PublisherQos for a publication. | |
| void | processUpdateQos1 (const SubscriptionUpdate *sample, const ::DDS::SampleInfo *info) |
| Update the proxy DataReaderQos for a subscription. | |
| void | processUpdateQos2 (const SubscriptionUpdate *sample, const ::DDS::SampleInfo *info) |
| Update the proxy SubscriberQos for a subscription. | |
| void | processUpdateQos1 (const ParticipantUpdate *sample, const ::DDS::SampleInfo *info) |
| Update the proxy ParticipantQos for a participant. | |
| void | processUpdateQos1 (const TopicUpdate *sample, const ::DDS::SampleInfo *info) |
| Update the proxy TopicQos for a topic. | |
| void | processDelete (const OwnerUpdate *sample, const ::DDS::SampleInfo *info) |
| Null implementation for OwnerUpdate samples. | |
| void | processDelete (const PublicationUpdate *sample, const ::DDS::SampleInfo *info) |
| Delete a proxy for a publication. | |
| void | processDelete (const SubscriptionUpdate *sample, const ::DDS::SampleInfo *info) |
| Delete a proxy for a subscription. | |
| void | processDelete (const ParticipantUpdate *sample, const ::DDS::SampleInfo *info) |
| Delete a proxy for a participant. | |
| void | processDelete (const TopicUpdate *sample, const ::DDS::SampleInfo *info) |
| Delete a proxy for a topic. | |
Private Types | |
| typedef std::map< RepoKey, Manager_var > | IdToManagerMap |
| Map type to hold references to federated repository Managers. | |
Private Attributes | |
| ACE_SYNCH_MUTEX | lock_ |
| Critical section MUTEX. | |
| ACE_Condition< ACE_SYNCH_MUTEX > | joining_ |
| Condition used to gate joining activities. | |
| RepoKey | joiner_ |
| Simple recursion avoidance during the join operations. | |
| RepoKey | joinRepo_ |
| Repository to which we joined. | |
| bool | federated_ |
| IdToManagerMap | peers_ |
| The peer with which we have federated. | |
| ::OpenDDS::DCPS::SequenceNumber | sequence_ |
| The packet sequence number for data that we publish. | |
| Config & | config_ |
| The configuration information for this manager. | |
| TAO_DDS_DCPSInfo_i * | info_ |
| The Info object reference to update. | |
| ::OpenDDS::DCPS::DCPSInfo_var | localRepo_ |
| Remotely callable reference to the local repository. | |
| CORBA::ORB_var | orb_ |
| The ORB in which we are activated. | |
| InfoRepoMulticastResponder | multicastResponder_ |
| Multicast responder. | |
| ::DDS::DomainParticipant_var | federationParticipant_ |
| local DomainParticipant | |
| UpdateListener< OwnerUpdate, OwnerUpdateDataReader > | ownerListener_ |
| TopicUpdate listener. | |
| UpdateListener< TopicUpdate, TopicUpdateDataReader > | topicListener_ |
| TopicUpdate listener. | |
| UpdateListener< ParticipantUpdate, ParticipantUpdateDataReader > | participantListener_ |
| ParticipantUpdate listener. | |
| UpdateListener< PublicationUpdate, PublicationUpdateDataReader > | publicationListener_ |
| PublicationUpdate listener. | |
| UpdateListener< SubscriptionUpdate, SubscriptionUpdateDataReader > | subscriptionListener_ |
| SubscriptionUpdate listener. | |
| OwnerUpdateDataWriter_var | ownerWriter_ |
| TopicUpdate writer. | |
| TopicUpdateDataWriter_var | topicWriter_ |
| TopicUpdate writer. | |
| ParticipantUpdateDataWriter_var | participantWriter_ |
| ParticipantUpdate writer. | |
| PublicationUpdateDataWriter_var | publicationWriter_ |
| PublicationUpdate writer. | |
| SubscriptionUpdateDataWriter_var | subscriptionWriter_ |
| SubscriptionUpdate writer. | |
| std::list< OwnerUpdate > | deferredOwnerships_ |
| Deferred ownership updates. | |
| std::list< TopicUpdate > | deferredTopics_ |
| Deferred topic updates. | |
| std::list< PublicationUpdate > | deferredPublications_ |
| Deferred publication updates. | |
| std::list< SubscriptionUpdate > | deferredSubscriptions_ |
| Deferred subscription updates. | |
| bool | multicastEnabled_ |
| Is multicast enabled? | |
| ACE_Thread_Mutex | deferred_lock_ |
| Protect deferred updates. | |
typedef std::map< RepoKey, Manager_var> OpenDDS::Federator::ManagerImpl::IdToManagerMap [private] |
Map type to hold references to federated repository Managers.
| OpenDDS::Federator::ManagerImpl::ManagerImpl | ( | Config & | config | ) |
Default constructor.
| OpenDDS::Federator::ManagerImpl::~ManagerImpl | ( | ) | [virtual] |
Virtual destructor.
| void OpenDDS::Federator::ManagerImpl::create | ( | const Update::OwnershipData & | data | ) | [virtual] |
Implements Update::Updater.
| virtual void OpenDDS::Federator::ManagerImpl::create | ( | const Update::UWActor & | writer | ) | [virtual] |
Implements Update::Updater.
| void OpenDDS::Federator::ManagerImpl::create | ( | const Update::URActor & | reader | ) | [virtual] |
Implements Update::Updater.
| void OpenDDS::Federator::ManagerImpl::create | ( | const Update::UParticipant & | participant | ) | [virtual] |
Implements Update::Updater.
| void OpenDDS::Federator::ManagerImpl::create | ( | const Update::UTopic & | topic | ) | [virtual] |
Implements Update::Updater.
| void OpenDDS::Federator::ManagerImpl::destroy | ( | const Update::IdPath & | id, | |
| Update::ItemType | type, | |||
| Update::ActorType | actor | |||
| ) | [virtual] |
Implements Update::Updater.
| CORBA::Boolean OpenDDS::Federator::ManagerImpl::discover_federation | ( | const char * | ior | ) | throw ( ::CORBA::SystemException, Incomplete ) |
| RepoKey OpenDDS::Federator::ManagerImpl::federation_id | ( | void | ) | throw ( ::CORBA::SystemException ) [virtual] |
| void OpenDDS::Federator::ManagerImpl::finalize | ( | ) |
Release resources gracefully.
| ACE_INLINE OpenDDS::Federator::RepoKey OpenDDS::Federator::ManagerImpl::id | ( | ) | const |
| ACE_INLINE OpenDDS::Federator::RepoKey & OpenDDS::Federator::ManagerImpl::id | ( | ) |
Accessors for the federation Id value.
| ACE_INLINE TAO_DDS_DCPSInfo_i * OpenDDS::Federator::ManagerImpl::info | ( | ) | const |
| ACE_INLINE TAO_DDS_DCPSInfo_i *& OpenDDS::Federator::ManagerImpl::info | ( | ) |
Accessors for the DCPSInfo reference.
| void OpenDDS::Federator::ManagerImpl::initialize | ( | ) |
Establish the update publications and subscriptions.
| void OpenDDS::Federator::ManagerImpl::initializeOwner | ( | const ::OpenDDS::Federator::OwnerUpdate & | data | ) | throw ( ::CORBA::SystemException, ::OpenDDS::Federator::Incomplete ) [virtual] |
| void OpenDDS::Federator::ManagerImpl::initializeParticipant | ( | const ::OpenDDS::Federator::ParticipantUpdate & | data | ) | throw ( ::CORBA::SystemException, ::OpenDDS::Federator::Incomplete ) [virtual] |
| void OpenDDS::Federator::ManagerImpl::initializePublication | ( | const ::OpenDDS::Federator::PublicationUpdate & | data | ) | throw ( ::CORBA::SystemException, ::OpenDDS::Federator::Incomplete ) [virtual] |
| void OpenDDS::Federator::ManagerImpl::initializeSubscription | ( | const ::OpenDDS::Federator::SubscriptionUpdate & | data | ) | throw ( ::CORBA::SystemException, ::OpenDDS::Federator::Incomplete ) [virtual] |
| void OpenDDS::Federator::ManagerImpl::initializeTopic | ( | const ::OpenDDS::Federator::TopicUpdate & | data | ) | throw ( ::CORBA::SystemException, ::OpenDDS::Federator::Incomplete ) [virtual] |
| Manager_ptr OpenDDS::Federator::ManagerImpl::join_federation | ( | Manager_ptr | peer, | |
| FederationDomain | federation | |||
| ) | throw ( ::CORBA::SystemException, Incomplete ) [virtual] |
| void OpenDDS::Federator::ManagerImpl::leave_and_shutdown | ( | void | ) | throw ( ::CORBA::SystemException, Incomplete ) [virtual] |
| void OpenDDS::Federator::ManagerImpl::leave_federation | ( | RepoKey | id | ) | throw ( ::CORBA::SystemException, Incomplete ) [virtual] |
| ACE_INLINE void OpenDDS::Federator::ManagerImpl::localRepo | ( | ::OpenDDS::DCPS::DCPSInfo_ptr | repo | ) |
Capture a remote callable reference to the DCPSInfo.
| ACE_INLINE void OpenDDS::Federator::ManagerImpl::orb | ( | CORBA::ORB_ptr | value | ) |
| ACE_INLINE CORBA::ORB_ptr OpenDDS::Federator::ManagerImpl::orb | ( | ) |
Accessors for the ORB.
| void OpenDDS::Federator::ManagerImpl::processCreate | ( | const TopicUpdate * | sample, | |
| const ::DDS::SampleInfo * | info | |||
| ) |
Create a proxy for a new topic.
| void OpenDDS::Federator::ManagerImpl::processCreate | ( | const ParticipantUpdate * | sample, | |
| const ::DDS::SampleInfo * | info | |||
| ) |
Create a proxy for a new participant.
| void OpenDDS::Federator::ManagerImpl::processCreate | ( | const SubscriptionUpdate * | sample, | |
| const ::DDS::SampleInfo * | info | |||
| ) |
Create a proxy for a new subscription.
| void OpenDDS::Federator::ManagerImpl::processCreate | ( | const PublicationUpdate * | sample, | |
| const ::DDS::SampleInfo * | info | |||
| ) |
Create a proxy for a new publication.
| void OpenDDS::Federator::ManagerImpl::processCreate | ( | const OwnerUpdate * | sample, | |
| const ::DDS::SampleInfo * | info | |||
| ) |
Null implementation for OwnerUpdate samples.
| void OpenDDS::Federator::ManagerImpl::processDeferred | ( | ) |
Handle any deferred updates that might have become processable.
| void OpenDDS::Federator::ManagerImpl::processDelete | ( | const TopicUpdate * | sample, | |
| const ::DDS::SampleInfo * | info | |||
| ) |
Delete a proxy for a topic.
| void OpenDDS::Federator::ManagerImpl::processDelete | ( | const ParticipantUpdate * | sample, | |
| const ::DDS::SampleInfo * | info | |||
| ) |
Delete a proxy for a participant.
| void OpenDDS::Federator::ManagerImpl::processDelete | ( | const SubscriptionUpdate * | sample, | |
| const ::DDS::SampleInfo * | info | |||
| ) |
Delete a proxy for a subscription.
| void OpenDDS::Federator::ManagerImpl::processDelete | ( | const PublicationUpdate * | sample, | |
| const ::DDS::SampleInfo * | info | |||
| ) |
Delete a proxy for a publication.
| void OpenDDS::Federator::ManagerImpl::processDelete | ( | const OwnerUpdate * | sample, | |
| const ::DDS::SampleInfo * | info | |||
| ) |
Null implementation for OwnerUpdate samples.
| void OpenDDS::Federator::ManagerImpl::processUpdateQos1 | ( | const TopicUpdate * | sample, | |
| const ::DDS::SampleInfo * | info | |||
| ) |
Update the proxy TopicQos for a topic.
| void OpenDDS::Federator::ManagerImpl::processUpdateQos1 | ( | const ParticipantUpdate * | sample, | |
| const ::DDS::SampleInfo * | info | |||
| ) |
Update the proxy ParticipantQos for a participant.
| void OpenDDS::Federator::ManagerImpl::processUpdateQos1 | ( | const SubscriptionUpdate * | sample, | |
| const ::DDS::SampleInfo * | info | |||
| ) |
Update the proxy DataReaderQos for a subscription.
| void OpenDDS::Federator::ManagerImpl::processUpdateQos1 | ( | const PublicationUpdate * | sample, | |
| const ::DDS::SampleInfo * | info | |||
| ) |
Update the proxy DataWriterQos for a publication.
| void OpenDDS::Federator::ManagerImpl::processUpdateQos1 | ( | const OwnerUpdate * | sample, | |
| const ::DDS::SampleInfo * | info | |||
| ) |
Process ownership changes.
| void OpenDDS::Federator::ManagerImpl::processUpdateQos2 | ( | const SubscriptionUpdate * | sample, | |
| const ::DDS::SampleInfo * | info | |||
| ) |
Update the proxy SubscriberQos for a subscription.
| void OpenDDS::Federator::ManagerImpl::processUpdateQos2 | ( | const PublicationUpdate * | sample, | |
| const ::DDS::SampleInfo * | info | |||
| ) |
Update the proxy PublisherQos for a publication.
| void OpenDDS::Federator::ManagerImpl::pushState | ( | Manager_ptr | peer | ) |
Push our current state to a remote repository.
| OpenDDS::DCPS::DCPSInfo_ptr OpenDDS::Federator::ManagerImpl::repository | ( | void | ) | throw ( ::CORBA::SystemException ) |
| void OpenDDS::Federator::ManagerImpl::requestImage | ( | ) | [virtual] |
Implements Update::Updater.
| void OpenDDS::Federator::ManagerImpl::shutdown | ( | void | ) | throw ( ::CORBA::SystemException, Incomplete ) [virtual] |
| void OpenDDS::Federator::ManagerImpl::unregisterCallback | ( | ) | [virtual] |
| void OpenDDS::Federator::ManagerImpl::update | ( | const Update::IdPath & | id, | |
| const ::DDS::SubscriberQos & | qos | |||
| ) | [virtual] |
Implements Update::Updater.
| void OpenDDS::Federator::ManagerImpl::update | ( | const Update::IdPath & | id, | |
| const ::DDS::DataReaderQos & | qos | |||
| ) | [virtual] |
Implements Update::Updater.
| void OpenDDS::Federator::ManagerImpl::update | ( | const Update::IdPath & | id, | |
| const ::DDS::PublisherQos & | qos | |||
| ) | [virtual] |
Implements Update::Updater.
| void OpenDDS::Federator::ManagerImpl::update | ( | const Update::IdPath & | id, | |
| const ::DDS::DataWriterQos & | qos | |||
| ) | [virtual] |
Implements Update::Updater.
| void OpenDDS::Federator::ManagerImpl::update | ( | const Update::IdPath & | id, | |
| const ::DDS::TopicQos & | qos | |||
| ) | [virtual] |
Implements Update::Updater.
| void OpenDDS::Federator::ManagerImpl::update | ( | const Update::IdPath & | id, | |
| const ::DDS::DomainParticipantQos & | qos | |||
| ) | [virtual] |
Implements Update::Updater.
Config& OpenDDS::Federator::ManagerImpl::config_ [private] |
The configuration information for this manager.
ACE_Thread_Mutex OpenDDS::Federator::ManagerImpl::deferred_lock_ [private] |
Protect deferred updates.
std::list< OwnerUpdate> OpenDDS::Federator::ManagerImpl::deferredOwnerships_ [private] |
Deferred ownership updates.
std::list< PublicationUpdate> OpenDDS::Federator::ManagerImpl::deferredPublications_ [private] |
Deferred publication updates.
std::list< SubscriptionUpdate> OpenDDS::Federator::ManagerImpl::deferredSubscriptions_ [private] |
Deferred subscription updates.
std::list< TopicUpdate> OpenDDS::Federator::ManagerImpl::deferredTopics_ [private] |
Deferred topic updates.
bool OpenDDS::Federator::ManagerImpl::federated_ [private] |
Flag indicating that we are actively participating in a federation of repositories.
::DDS::DomainParticipant_var OpenDDS::Federator::ManagerImpl::federationParticipant_ [private] |
local DomainParticipant
The Info object reference to update.
Simple recursion avoidance during the join operations.
ACE_Condition<ACE_SYNCH_MUTEX> OpenDDS::Federator::ManagerImpl::joining_ [private] |
Condition used to gate joining activities.
Repository to which we joined.
::OpenDDS::DCPS::DCPSInfo_var OpenDDS::Federator::ManagerImpl::localRepo_ [private] |
Remotely callable reference to the local repository.
ACE_SYNCH_MUTEX OpenDDS::Federator::ManagerImpl::lock_ [private] |
Critical section MUTEX.
bool OpenDDS::Federator::ManagerImpl::multicastEnabled_ [private] |
Is multicast enabled?
Multicast responder.
CORBA::ORB_var OpenDDS::Federator::ManagerImpl::orb_ [private] |
The ORB in which we are activated.
UpdateListener< OwnerUpdate, OwnerUpdateDataReader> OpenDDS::Federator::ManagerImpl::ownerListener_ [private] |
TopicUpdate listener.
OwnerUpdateDataWriter_var OpenDDS::Federator::ManagerImpl::ownerWriter_ [private] |
TopicUpdate writer.
UpdateListener< ParticipantUpdate, ParticipantUpdateDataReader> OpenDDS::Federator::ManagerImpl::participantListener_ [private] |
ParticipantUpdate listener.
ParticipantUpdateDataWriter_var OpenDDS::Federator::ManagerImpl::participantWriter_ [private] |
ParticipantUpdate writer.
The peer with which we have federated.
UpdateListener< PublicationUpdate, PublicationUpdateDataReader> OpenDDS::Federator::ManagerImpl::publicationListener_ [private] |
PublicationUpdate listener.
PublicationUpdateDataWriter_var OpenDDS::Federator::ManagerImpl::publicationWriter_ [private] |
PublicationUpdate writer.
The packet sequence number for data that we publish.
UpdateListener< SubscriptionUpdate, SubscriptionUpdateDataReader> OpenDDS::Federator::ManagerImpl::subscriptionListener_ [private] |
SubscriptionUpdate listener.
SubscriptionUpdateDataWriter_var OpenDDS::Federator::ManagerImpl::subscriptionWriter_ [private] |
SubscriptionUpdate writer.
UpdateListener< TopicUpdate, TopicUpdateDataReader> OpenDDS::Federator::ManagerImpl::topicListener_ [private] |
TopicUpdate listener.
TopicUpdateDataWriter_var OpenDDS::Federator::ManagerImpl::topicWriter_ [private] |
TopicUpdate writer.
1.4.7