![]() |
VR-Link API Documentation for DIS
|
00001 /********************************************************************* 00002 ** Copyright (c) 1992-2010 VT MAK 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 00006 00010 00011 #ifndef DtUpdateControlCbList_H_ 00012 #define DtUpdateControlCbList_H_ 00013 00014 #if DtHLA 00015 00016 #include <vlutil/vlList.h> 00017 00018 00019 #include "rtiNamespace.h" 00020 00021 00022 #if DtHLA_1516 00023 typedef void (*DtUpdateControlCb)( RTI::ObjectInstanceHandle instanceHandle, 00024 const RTI::AttributeHandleSet& attributeSet, 00025 void* usr); 00026 #else 00027 typedef void (*DtUpdateControlCb)( RTI::ObjectHandle instanceHandle, 00028 const RTI::AttributeHandleSet& attributeSet, 00029 void* usr); 00030 #endif 00031 00032 typedef DtUpdateControlCb DtUpdatesOnCb; 00033 typedef DtUpdateControlCb DtUpdatesOffCb; 00034 00035 00040 class DT_DLL_VL DtUpdateControlCbList 00041 { 00042 public: 00043 00045 DtUpdateControlCbList(); 00046 00048 virtual ~DtUpdateControlCbList(); 00049 00051 DtUpdateControlCbList( const DtUpdateControlCbList& orig); 00052 00054 DtUpdateControlCbList& operator=( const DtUpdateControlCbList& orig); 00055 00058 virtual int add( 00059 #if DtHLA_1516 00060 RTI::ObjectInstanceHandle hand, 00061 #else 00062 RTI::ObjectHandle hand, 00063 #endif 00064 DtUpdateControlCb cb, 00065 void* usr); 00066 00067 virtual int remove( 00068 #if DtHLA_1516 00069 RTI::ObjectInstanceHandle hand, 00070 #else 00071 RTI::ObjectHandle hand, 00072 #endif 00073 DtUpdateControlCb cb, 00074 void* usr); 00075 00077 virtual void clear(); 00078 00081 virtual void apply( 00082 #if DtHLA_1516 00083 RTI::ObjectInstanceHandle instanceHandle, 00084 #else 00085 RTI::ObjectHandle instanceHandle, 00086 #endif 00087 const RTI::AttributeHandleSet& hSet); 00088 00089 protected: 00090 00094 void dtorClear(); 00095 00098 void ctorCopyList(const DtUpdateControlCbList& orig); 00099 00100 protected: 00101 00102 DtList myList; 00103 }; 00104 00105 typedef DtUpdateControlCbList DtUpdatesOnCbList; 00106 typedef DtUpdateControlCbList DtUpdatesOffCbList; 00107 00108 #endif 00109 #endif 00110