![]() |
MAK RTIspy API Documentation for HLA 1516
|
00001 /********************************************************************* 00002 ** Copyright (c) 2001 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 /********************************************************************* 00006 ** $RCSfile: repObjUpd.h,v $ $Revision: 1.9 $ $State: Exp $ 00007 *********************************************************************/ 00008 #ifdef DtMOM 00009 00012 00013 #ifndef DtReportObjectsUpdatedInteraction_H_ 00014 #define DtReportObjectsUpdatedInteraction_H_ 00015 00016 #include "rtiMsConfig.h" 00017 #include "internalTypes.h" 00018 #include "mInteraction.h" 00019 #include <vlutil/vlList.h> 00020 00021 class DtMomInterCbMgr; 00022 class DtReportObjectsUpdatedInteraction; 00023 typedef void (*DtReportObjectsUpdatedInteractionCb) 00024 (const DtReportObjectsUpdatedInteraction& inter, void* usr); 00025 00026 class DT_DLL_LRC DtReportObjectsUpdatedInteraction : 00027 public DtReportInteraction 00028 { 00029 public: 00030 00032 DtReportObjectsUpdatedInteraction(); 00033 00035 virtual ~DtReportObjectsUpdatedInteraction(); 00036 00038 DtReportObjectsUpdatedInteraction( 00039 const DtReportObjectsUpdatedInteraction& orig); 00040 00042 DtReportObjectsUpdatedInteraction& operator=( 00043 const DtReportObjectsUpdatedInteraction& orig); 00044 00047 virtual const DtPhvps& phvps(); 00048 00051 virtual bool setFromPhvps(const DtPhvps& phvps); 00052 00054 virtual DtMomTallyList const& objectCounts() const; 00055 virtual DtMomTallyList & objectCounts(); 00056 00057 00058 public: 00060 static DtReportInteraction* create(); 00061 00063 static void addCallback(DtMomInterCbMgr* callBackManager, 00064 DtReportObjectsUpdatedInteractionCb cb, void* usr); 00065 static void removeCallback(DtMomInterCbMgr* callBackManager, 00066 DtReportObjectsUpdatedInteractionCb cb, void* usr); 00067 00068 protected: 00069 00074 virtual void encodeObjectCounts( 00075 const DtMomInteraction& data, 00076 DtPhvps* parameters, 00077 DtParameterHandle parameterHandle); 00078 00080 virtual void decodeObjectCounts( 00081 DtMomInteraction* data, 00082 const DtPhvps& parameters, 00083 int index); 00084 00085 public: 00086 static const char* theInteractionName; 00087 00088 protected: 00090 DtMomTallyList myObjectCounts; 00091 00092 const char *OBJECT_COUNTS_PARAMETER_NAME; 00093 00094 }; 00095 00096 #endif 00097 #endif