![]() |
VR-Link API Documentation for HLA Evolved
|
00001 /*************************************************************************** 00002 ** Copyright (c) 1992-2010 VT MAK 00003 ** All rights reserved. 00004 ***************************************************************************/ 00007 #pragma once 00008 00009 #pragma warning(disable : 4100) 00010 #include <vlutil/vlMachineTypes.h> 00011 #include "stringTree.h" 00012 00013 //VR-Link Includes 00014 #ifdef DtHLA_1516 00015 #include "RTI/RTI1516.h" 00016 #else 00017 #include "RTI.hh" 00018 #endif 00019 #include <vl/hStateMsg.h> 00020 #include <vl/genericSR.h> 00021 #include <vl/rtiNamespace.h> 00022 00023 00024 #include "attributeHistory.h" 00025 00026 #include <map> 00027 #include <string> 00028 00029 #include <QtCore/QObject> 00030 00031 00032 //This class contains information about a single object 00033 class DT_DLL_OMTREADER DtObjectHistory : public QObject 00034 { 00035 Q_OBJECT 00036 00037 public: 00038 00040 DtObjectHistory(const char * objName, RTI::ObjectClassHandle handle); 00041 00043 virtual ~DtObjectHistory(); 00044 00045 virtual const char * objectName(); 00046 virtual RTI::ObjectClassHandle objectClassHandle() const; 00047 00048 virtual DtAttributeHistory* getAttribute(RTI::AttributeHandle handle); 00049 00050 //Note: This function takes ownership of the Attribute Repository 00051 virtual void setAttribute(RTI::AttributeHandle handle, DtAttributeHistory* history); 00052 00053 virtual DtStringTree* createStringTree(RTI::AttributeHandle handle, const DtDatatypeFedNode* omtNode); 00054 00055 virtual void updateAllAttributes(const DtStateMsg& msg, DtHlaObject* obj); 00056 virtual void updateAllAttributes(DtGenericStateRepository& stateRep, DtHlaObject* obj); 00057 00058 signals: 00059 00061 void updatedAttributes(DtObjectHistory*, DtHlaObject*); 00062 00063 protected: 00064 00065 RTI::ObjectClassHandle myObjectClassHandle; 00066 const char * myObjectName; 00067 std::map<RTI::AttributeHandle, DtAttributeHistory*> myAttributes; 00068 }; 00069