![]() |
VR-Link API Documentation for DIS
|
00001 /********************************************************************* 00002 ** Copyright (c) 1992-2010 VT MAK 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 00006 00007 #ifndef hReflAggList_H_ 00008 #define hReflAggList_H_ 00009 00010 #if DtHLA 00011 00012 #include "hRefObjList.h" 00013 #include "hReflectedAgg.h" 00014 00019 00024 00025 class DT_DLL_VL DtReflectedAggregateList : public DtReflectedObjectList 00026 { 00027 public: 00028 00031 DtReflectedAggregateList(DtExerciseConn* exConn, 00032 bool smoothCapable = false, const DtDDMRegionSet* regionSetToUse = 0, 00033 const DtString& updateRateTag = DtString("")); 00034 00037 DtReflectedAggregateList(DtExerciseConn* exConn, 00038 const DtList *handleList, bool smoothCapable = false, 00039 const DtDDMRegionSet* regionSetToUse = 0, 00040 const DtString& updateRateTag = DtString("")); 00041 00043 virtual ~DtReflectedAggregateList(); 00044 00046 virtual DtReflectedAggregate* lookup( 00047 #if DtHLA_1516 00048 RTI::ObjectInstanceHandle id); 00049 #else 00050 RTI::ObjectHandle id); 00051 #endif 00052 00054 virtual DtReflectedAggregate* lookup( 00055 const DtGlobalObjectDesignator& objName); 00056 00058 virtual DtReflectedAggregate* first() const; 00059 virtual DtReflectedAggregate* last() const; 00060 00062 virtual void addAggregateAdditionCallback( 00063 DtAggregateCallbackFunction cb, void* userData); 00064 virtual void removeAggregateAdditionCallback( 00065 DtAggregateCallbackFunction cb, void* userData); 00066 00068 virtual void addAggregateRemovalCallback( 00069 DtAggregateCallbackFunction cb, void* userData); 00070 virtual void removeAggregateRemovalCallback( 00071 DtAggregateCallbackFunction cb, void* userData); 00072 00073 protected: 00074 00076 DtReflectedAggregateList(const DtReflectedAggregateList& orig); 00077 00079 DtReflectedAggregateList& operator=(const DtReflectedAggregateList& orig); 00080 00082 virtual const DtList* dfltHandleList(); 00083 00085 virtual DtReflectedObject* newReflectedObject(DtHlaObject* obj) const; 00086 00089 virtual DtReflectedAggregate* newReflectedAggregate( 00090 DtHlaObject* obj) const; 00091 00094 virtual void removeAndDelete(DtReflectedObject* object, char* msg); 00095 00097 virtual void removeAndDelete( 00098 DtReflectedAggregate* aggregate, char* msg = NULL); 00099 00102 virtual void objectAdded(DtReflectedObject* obj); 00103 00108 virtual void aggregateAdded(DtReflectedAggregate* ent); 00109 00110 protected: 00111 00112 bool mySmoothCapable; 00113 }; 00114 00115 #endif 00116 #endif 00117