![]() |
VR-Link API Documentation for HLA 1516
|
00001 /********************************************************************* 00002 ** Copyright (c) 1992-2010 VT MAK 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 00006 00007 #ifndef DtReflectedGriddedData_H_ 00008 #define DtReflectedGriddedData_H_ 00009 00010 #if DtHLA 00011 00012 #include "gridDataSR.h" 00013 #include "hReflectedObj.h" 00014 #include <vlutil/vlPrint.h> 00015 00020 00023 class DT_DLL_VL DtReflectedGriddedData; 00024 typedef void (*DtGriddedDataCallbackFunction)( 00025 DtReflectedGriddedData* obj, void* userData); 00026 00031 00032 class DT_DLL_VL DtReflectedGriddedData : public DtReflectedObject 00033 { 00034 public: 00035 00037 typedef DtGriddedDataRepository* (*DtStateRepCreator)(); 00038 00039 public: 00040 00042 DtReflectedGriddedData(DtHlaObject* obj, DtExerciseConn* conn); 00043 00045 virtual ~DtReflectedGriddedData(); 00046 00048 virtual DtGriddedDataRepository* gridDataRep() const; 00049 00051 virtual DtGriddedDataRepository* gdsr() const; 00052 00054 virtual DtReflectedGriddedData* next() const; 00055 00057 virtual DtReflectedGriddedData* prev() const; 00058 00061 virtual DtReflectedGriddedData* wrapNext() const; 00062 00065 virtual DtReflectedGriddedData* wrapPrev() const; 00066 00068 virtual void addPostUpdateCallback( 00069 DtGriddedDataCallbackFunction cb, void* userData); 00070 00071 virtual void removePostUpdateCallback( 00072 DtGriddedDataCallbackFunction cb, void* userData); 00073 00074 public: 00075 00077 static DtStateRepCreator setStateRepCreator(DtStateRepCreator creator); 00078 00079 protected: 00080 00082 DtReflectedGriddedData(const DtReflectedGriddedData& orig); 00083 00085 DtReflectedGriddedData& operator=(const DtReflectedGriddedData& orig); 00086 00087 protected: 00088 00089 static DtStateRepCreator theStateRepCreator; 00090 }; 00091 00092 inline DtGriddedDataRepository* DtReflectedGriddedData::gridDataRep() const 00093 { 00094 return (DtGriddedDataRepository*) myStateRep; 00095 } 00096 00097 inline DtGriddedDataRepository* DtReflectedGriddedData::gdsr() const 00098 { 00099 return (DtGriddedDataRepository*) myStateRep; 00100 } 00101 00102 #endif //DtHLA 00103 #endif //DtReflectedGriddedData_H_ 00104