MAK Data Logger API Documentation for DIS
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
objectClassFedNode.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 1992-2010 VT MAK
3 ** All rights reserved.
4 *******************************************************************************/
7 #pragma once
8 
9 
10 
11 #pragma warning(disable : 4100)
12 
13 #include "fedNode.h"
14 #include "attributeFedNode.h"
15 
16 #ifdef DtHLA
17 #include <vl/fom.h>
18 #include <vl/objClassDesc.h>
19 #include <vl/rtiNamespace.h>
20 #endif
21 
22 #include <vlutil/vlString.h>
23 #include <list>
24 #include <map>
26 
27 
31 {
32 public:
33 
35  typedef std::list<DtObjectClassFedNode*> ObjectClassFedNodeList;
36 
38  typedef std::list<DtAttributeFedNode*> AttributeFedNodeList;
39  typedef std::map<DtString, DtAttributeFedNode*> AttributeFedNodeByName;
40 #ifdef DtHLA
41  typedef std::map<RTI::AttributeHandle, DtAttributeFedNode*> AttributeFedNodeByHandle;
42 #endif
43 
46 
49 
51  virtual ~DtObjectClassFedNode();
52 
55 
58 
60  virtual void addAttribute(DtAttributeFedNode* attribute);
61 
63  virtual void associateAttribute(DtAttributeFedNode* attribute);
64 
66  virtual void addChildObject(DtObjectClassFedNode* child);
67 
69  virtual DtObjectClassFedNode* findChildObject(const char * name) ;
70 
72  virtual DtAttributeFedNode* findAttribute(const char * attribute) const;
73 
74 #if DtHLA
75  virtual DtAttributeFedNode* findAttribute(RTI::AttributeHandle attribute) const;
77 #endif
78 
80  virtual const ObjectClassFedNodeList& getChildObjects() const;
81 
83  virtual const AttributeFedNodeList& getAttributes() const;
84 
85  virtual void setDescriptor(const DtString&);
86  virtual const DtString& getDescriptor() const;
87 
88 #ifdef DtHLA
89  virtual void setParentClassHandle(RTI::ObjectClassHandle);
90  virtual RTI::ObjectClassHandle getParentClassHandle();
91 
92  virtual void setClassHandle(RTI::ObjectClassHandle);
93  virtual RTI::ObjectClassHandle getClassHandle();
94 #endif
95 
96  virtual void setSharing(const DtString&);
97  virtual const DtString& getSharing() const;
98 
99  virtual void setIdentifier(int);
100  virtual int getIdentifier();
101  virtual void setParentIdentifier(int);
102  virtual int getParentIdentifier();
103 
104 protected:
105  virtual void removeAttributes();
106 
107 protected:
111 
112 #ifdef DtHLA
113  AttributeFedNodeByHandle myAttributesByHandle;
114 
117  RTI::ObjectClassHandle myParentClassValue;
118  RTI::ObjectClassHandle myClassValue;
119 #endif
120 
121  DtString myDescriptor;
122 
123  // 1516(E) only
124  DtString mySharing;
125 
126  // 1.3 only
129 };
130 
131 
132 
133 
ObjectClassFedNodeList myChildObjects
Definition: objectClassFedNode.h:110
Represents an attribute inside a object class.
Definition: attributeFedNode.h:25
std::map< DtString, DtAttributeFedNode * > AttributeFedNodeByName
Definition: objectClassFedNode.h:39
#define DT_DLL_OMTREADER
Definition: omtReader.h:23
A Datatype Representation is a class that can take a group of bytes and display them in a certain typ...
Definition: datatypeRep.h:20
DtString mySharing
Definition: objectClassFedNode.h:124
Represents a node in a fed tree.
Definition: fedNode.h:19
defines an object class inside our Fed Tree
Definition: objectClassFedNode.h:30
AttributeFedNodeByName myAttributesByName
Definition: objectClassFedNode.h:109
DtString myDescriptor
Definition: objectClassFedNode.h:121
std::list< DtObjectClassFedNode * > ObjectClassFedNodeList
A list of DtObjectClassFedNode pointers.
Definition: objectClassFedNode.h:35
DtFedNode & operator=(const DtFedNode &rhs)
Assignment Operator.
AttributeFedNodeList myAttributes
Definition: objectClassFedNode.h:108
std::list< DtAttributeFedNode * > AttributeFedNodeList
A list of AttributeFedNode pointers.
Definition: objectClassFedNode.h:38
int myParentIdentifier
Definition: objectClassFedNode.h:128
int myIdentifier
Definition: objectClassFedNode.h:127

Document ID: Generated on Mon Mar 22 15:30:17 EDT 2021 from SVN revision 226440
Copyright © 2021 MAK Technologies. All Rights Reserved (www.mak.com)