VR-Link API Documentation for HLA Evolved
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
objectClassFedNode.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 1992-2010 MAK Technologies, Inc
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 #ifndef DtUSE_UTILITIES_NAMESPACE
18 #include <vl/fom.h>
19 #include <vl/objClassDesc.h>
20 #include <vl/rtiNamespace.h>
21 #endif
22 #endif
23 
24 #include <vlutil/vlString.h>
25 #include <list>
26 #include <map>
27 #ifdef DtUSE_UTILITIES_NAMESPACE
28 namespace DtUSE_UTILITIES_NAMESPACE
29 {
30 #endif
32 
33 
37 {
38 public:
39 
41  typedef std::list<DtObjectClassFedNode*> ObjectClassFedNodeList;
42 
44  typedef std::list<DtAttributeFedNode*> AttributeFedNodeList;
45  typedef std::map<DtString, DtAttributeFedNode*> AttributeFedNodeByName;
46 #ifdef DtHLA
47 #ifndef DtUSE_UTILITIES_NAMESPACE
48  typedef std::map<RTI::AttributeHandle, DtAttributeFedNode*> AttributeFedNodeByHandle;
49 #endif
50 #endif
51 
54 
57 
59  virtual ~DtObjectClassFedNode();
60 
63 
65  DtObjectClassFedNode& operator=(const DtObjectClassFedNode& rhs);
66 
68  virtual void addAttribute(DtAttributeFedNode* attribute);
69 
71  virtual void associateAttribute(DtAttributeFedNode* attribute);
72 
74  virtual void addChildObject(DtObjectClassFedNode* child);
75 
77  virtual DtObjectClassFedNode* findChildObject(const char * name) ;
78 
80  virtual DtAttributeFedNode* findAttribute(const char * attribute) const;
81 
82 #if DtHLA
83 #ifndef DtUSE_UTILITIES_NAMESPACE
84  virtual DtAttributeFedNode* findAttribute(RTI::AttributeHandle attribute) const;
86 #endif
87 #endif
88 
90  virtual const ObjectClassFedNodeList& getChildObjects() const;
91 
93  virtual const AttributeFedNodeList& getAttributes() const;
94 
95  virtual void setDescriptor(const DtString&);
96  virtual const DtString& getDescriptor() const;
97 
98 #ifdef DtHLA
99 #ifndef DtUSE_UTILITIES_NAMESPACE
100  virtual void setParentClassHandle(RTI::ObjectClassHandle);
101  virtual RTI::ObjectClassHandle getParentClassHandle();
102 
103  virtual void setClassHandle(RTI::ObjectClassHandle);
104  virtual RTI::ObjectClassHandle getClassHandle();
105 #endif
106 #endif
107 
108  virtual void setSharing(const DtString&);
109  virtual const DtString& getSharing() const;
110 
111  virtual void setIdentifier(int);
112  virtual int getIdentifier();
113  virtual void setParentIdentifier(int);
114  virtual int getParentIdentifier();
115 
116 protected:
117  virtual void removeAttributes();
118 
119 protected:
123 
124 #ifdef DtHLA
125 #ifndef DtUSE_UTILITIES_NAMESPACE
127 
130  RTI::ObjectClassHandle myParentClassValue;
131  RTI::ObjectClassHandle myClassValue;
132 #endif
133 #endif
134 
136 
137  // 1516(E) only
139 
140  // 1.3 only
143 };
144 
145 
146 #ifdef DtUSE_UTILITIES_NAMESPACE
147 } // end of namespace DtUSE_UTILITIES_NAMESPACE
148 #endif
ObjectClassFedNodeList myChildObjects
Definition: objectClassFedNode.h:122
Represents an attribute inside a object class.
Definition: attributeFedNode.h:33
Contains the DtString class declaration.
RTI::ObjectClassHandle myParentClassValue
The following values are used only when this node is filled with OMT information. ...
Definition: objectClassFedNode.h:130
std::map< DtString, DtAttributeFedNode * > AttributeFedNodeByName
Definition: objectClassFedNode.h:45
#define DT_DLL_OMTREADER
Definition: omtReader.h:27
A Datatype Representation is a class that can take a group of bytes and display them in a certain typ...
Definition: datatypeRep.h:24
This file declares DtFom.
DtString mySharing
Definition: objectClassFedNode.h:138
Represents a node in a fed tree.
Definition: fedNode.h:23
std::map< RTI::AttributeHandle, DtAttributeFedNode * > AttributeFedNodeByHandle
Definition: objectClassFedNode.h:48
defines an object class inside our Fed Tree
Definition: objectClassFedNode.h:36
AttributeFedNodeByName myAttributesByName
Definition: objectClassFedNode.h:121
DtString myDescriptor
Definition: objectClassFedNode.h:135
std::list< DtObjectClassFedNode * > ObjectClassFedNodeList
A list of DtObjectClassFedNode pointers.
Definition: objectClassFedNode.h:41
AttributeFedNodeByHandle myAttributesByHandle
Definition: objectClassFedNode.h:126
Instances of DtString are used to represent strings.
Definition: vlString.h:29
AttributeFedNodeList myAttributes
Definition: objectClassFedNode.h:120
std::list< DtAttributeFedNode * > AttributeFedNodeList
A list of AttributeFedNode pointers.
Definition: objectClassFedNode.h:44
int myParentIdentifier
Definition: objectClassFedNode.h:142
RTI::ObjectClassHandle myClassValue
Definition: objectClassFedNode.h:131
int myIdentifier
Definition: objectClassFedNode.h:141

Document ID: Generated on Thu Sep 19 02:12:35 EDT 2024 from SVN revision 269601
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)