Updater.h

Go to the documentation of this file.
00001 /*
00002  *
00003  *
00004  * Distributed under the OpenDDS License.
00005  * See: http://www.opendds.org/license.html
00006  */
00007 
00008 #ifndef UPDATER_H
00009 #define UPDATER_H
00010 
00011 #include "UpdateDataTypes.h"
00012 #include "dds/DCPS/GuidUtils.h"
00013 #include "ace/Synch.h"
00014 
00015 namespace Update {
00016 
00017 class Updater {
00018 public:
00019   // Virtual destructor.
00020   virtual ~Updater();
00021 
00022   // Request an image refresh to be sent to
00023   //  the specified callback (asynchronously).
00024   virtual void requestImage() = 0;
00025 
00026   // Propagate that an entity has been created.
00027   virtual void create(const UTopic&              topic) = 0;
00028   virtual void create(const UParticipant&  participant) = 0;
00029   virtual void create(const URActor&             actor) = 0;
00030   virtual void create(const UWActor&             actor) = 0;
00031   virtual void create(const OwnershipData&        data) = 0;
00032 
00033   // Propagate updated Qos parameters for an entity.
00034   virtual void update(const IdPath& id, const DDS::DomainParticipantQos& qos) = 0;
00035   virtual void update(const IdPath& id, const DDS::TopicQos&             qos) = 0;
00036   virtual void update(const IdPath& id, const DDS::DataWriterQos&        qos) = 0;
00037   virtual void update(const IdPath& id, const DDS::PublisherQos&         qos) = 0;
00038   virtual void update(const IdPath& id, const DDS::DataReaderQos&        qos) = 0;
00039   virtual void update(const IdPath& id, const DDS::SubscriberQos&        qos) = 0;
00040   virtual void update(const IdPath& id, const DDS::StringSeq&     exprParams) = 0;
00041 
00042   // Propagate that an entity has been destroyed.
00043   virtual void destroy(const IdPath& id, ItemType type, ActorType actor) = 0;
00044 };
00045 
00046 inline
00047 Updater::~Updater()
00048 {
00049 }
00050 
00051 } // namespace Update
00052 
00053 #endif /* UPDATER_H */

Generated on Fri Feb 12 20:05:29 2016 for OpenDDS by  doxygen 1.4.7