Go to the documentation of this file.00001
00002
00003
00004
00007 #pragma once
00008
00009 #pragma warning(disable : 4100)
00010 #include <vlutil/vlMachineTypes.h>
00011 #include "stringTree.h"
00012
00013
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
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
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