15 #include <vl/globalObjectDesignator.h>
16 #include <vl/griddedDataRepository.h>
19 #include <vlutil/vlMachineTypes.h>
21 #include <TENA/GeocentricSpatialReferenceFrame/Pointer.h>
22 #include <MAK/GriddedData/ImmutablePublicationStatePtr.h>
23 #include <MAK/GriddedData/SubscriptionInfoPtr.h>
24 #include <MAK/GriddedData/ServantPtr.h>
25 #include <MAK/GriddedData/ProxyPtr.h>
30 namespace MAKVrExchange
33 namespace DtTenaBroker
43 class DT_DLL_MAKLROM DtGriddedDataInterface:
public DtObjectInterface
49 class DtGriddedDataServantObject :
public DtTenaServantObject
54 DtGriddedDataServantObject( MAK::GriddedData::ServantPtr sp):myServantPtr(sp){}
57 virtual ~DtGriddedDataServantObject() {}
60 virtual const MAK::GriddedData::ServantPtr servant()
const {
return myServantPtr;}
63 virtual MAK::GriddedData::ServantPtr servant() {
return myServantPtr;}
67 MAK::GriddedData::ServantPtr myServantPtr;
74 DtGriddedDataInterface(DtExerciseConn* exConn);
77 virtual ~DtGriddedDataInterface();
81 virtual DtTenaServantObject* createServantObject(DtExerciseConn* exConn);
84 virtual void processServantCleanup(DtTenaServantObject* servantObject);
87 virtual void subscribe();
90 virtual bool needUpdate(
const DtStateRepository& stateRep,
91 const DtStateRepository& asSeenByRemote,
92 bool useThresholding =
true);
95 virtual void decode(
const DtTenaServantObject* servant,
96 DtStateRepository* stateRep)
const;
99 virtual void encode(DtTenaServantObject* servant,
100 const DtStateRepository* stateRep,
101 TENA::Time::Pointer timeForStamping,
102 bool forceUpdate =
false);
105 virtual DtReflectedObject *createReflectedObject()
const;
108 virtual void processAddition(MAK::GriddedData::ProxyPtr
const &proxy);
111 virtual void processUpdate(MAK::GriddedData::ProxyPtr
const &proxy);
114 virtual void processRemoval(MAK::GriddedData::ProxyPtr
const &proxy);
119 virtual void decode(
const MAK::GriddedData::ImmutablePublicationStatePtr pubStatePtr,
120 DtStateRepository* stateRep)
const;
123 virtual bool needGridAxisInfo(
const DtGriddedDataRepository& stateRep,
124 const DtGriddedDataRepository& asSeenByRemote,
int index)
const;
127 virtual bool needGridDataInfo(
const DtGriddedDataRepository& stateRep,
128 const DtGriddedDataRepository& asSeenByRemote,
int index)
const;
133 DtGriddedDataInterface(
const DtGriddedDataInterface& other );
136 DtGriddedDataInterface& operator = (
const DtGriddedDataInterface& other );
141 MAK::GriddedData::SubscriptionInfoPtr mySubscriptionInfoPtr;
142 typedef std::map<MAK::GriddedData::ProxyPtr,DtReflectedObject*> ProxyToRefObjMap;
143 ProxyToRefObjMap myRefGriddedDataMap;
144 ProxyToRefObjMap myGriddedDataWaitList;
145 TENA::GeocentricSpatialReferenceFrame::Pointer myGeocSrf;
Contains the DtGriddedDataPdu class declaration.
Contains the DtTenaServantObject and DtObjectInterface class declarations.
#define DT_DLL_MAKLROM
Definition: makLromMapExport.h:26