VR-Link API Documentation for HLA 1.3
dRefGridData.h
Go to the documentation of this file.
00001 /*********************************************************************
00002 ** Copyright (c) 1992-2010 VT MAK
00003 ** All rights reserved.
00004 *********************************************************************/
00005 
00006 
00009 
00010 #ifndef DtReflectedGriddedData_H_
00011 #define DtReflectedGriddedData_H_
00012 
00013 #if DtDIS
00014 
00015 #include "dReflectedObj.h"
00016 #include "dGridDataDec.h"
00017 #include "gridDataPdu.h"
00018 #include "globalObjDes.h"
00019 #include "objIdHashKey.h"
00020 
00021 class DT_DLL_VL DtGriddedDataRepository;
00022 class DT_DLL_VL DtExerciseConn;
00023 class DT_DLL_VL DtReflectedGriddedData;
00024 
00028 class DT_DLL_VL DtReflectedGriddedData;
00029 typedef void (*DtGriddedDataCallbackFunction) (
00030    DtReflectedGriddedData* obj, void* userData);
00031 
00035 class DT_DLL_VL DtReflectedGriddedData : public DtReflectedObject
00036 {
00037 public:
00038 
00040    typedef DtGriddedDataRepository* (*DtStateRepCreator)();
00041 
00042 public:
00043 
00045    DtReflectedGriddedData(
00046       DtExerciseConn* conn,
00047       const DtEntityIdentifier& id,
00048       const DtEntityType& type);
00049 
00051    virtual ~DtReflectedGriddedData();
00052 
00055    virtual DtGriddedDataRepository* griddedDataStateRep() const;
00056 
00058    virtual DtGriddedDataRepository* gdsr() const;
00059 
00061    virtual DtStateRepository* stateRep() const;
00062 
00065    virtual DtGriddedDataDecoder* decoder();
00066 
00068    virtual const DtEntityIdentifier& entityId() const;
00069 
00071    virtual const DtObjectId& id() const;
00072 
00074    virtual const DtObjectId& localId() const;
00075 
00078    virtual const DtGlobalObjectDesignator& globalId() const;
00079 
00082    virtual void processStateMessage(const DtStateMsg& msg);
00083 
00086    virtual DtReflectedGriddedData* next() const;
00087    virtual DtReflectedGriddedData* prev() const;
00088 
00090    virtual DtReflectedGriddedData* wrapNext() const;
00091    virtual DtReflectedGriddedData* wrapPrev() const;
00092 
00094    virtual void addPostUpdateCallback(
00095       DtGriddedDataCallbackFunction cb, void* userData);
00096    virtual void removePostUpdateCallback(
00097       DtGriddedDataCallbackFunction cb, void* userData);
00098 
00100    virtual const DtBaseHashKey& hashKey() const;
00101 
00103    virtual DtString idString() const;
00104 
00107    virtual void processGriddedData(const DtGriddedDataPdu& pdu);
00108 
00109 public:
00110 
00112    static void setStateRepCreator(DtStateRepCreator creator);
00113    static DtStateRepCreator stateRepCreator(void);
00114 
00115 protected:
00116 
00117    static DtStateRepCreator theStateRepCreator;
00118 
00119 protected:
00120 
00122    DtReflectedGriddedData(const DtReflectedGriddedData& orig);
00123 
00125    DtReflectedGriddedData& operator=(const DtReflectedGriddedData& orig);
00126 
00127 protected:
00128    
00129    DtEntityIdentifier myId;
00130    DtGriddedDataRepository* myStateRep;
00131    DtGriddedDataDecoder* myDecoder;
00132    DtEntityIdentifierHashKey myHashKey;
00133 };
00134 
00135 #endif
00136 #endif
00137 

Document ID: Generated on Mon May 14 08:06:18 EDT 2012 from SVN revision 114750
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)