VR-Link API Documentation for HLA 1.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
omtFileReader.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 #include <omtReader/omtReader.h>
12 #include <vlutil/vlString.h>
13 #include <mtl/mtl.h>
14 #ifdef DtUSE_UTILITIES_NAMESPACE
15 namespace DtUSE_UTILITIES_NAMESPACE
16 {
17 #endif
18 class DtOMTTree;
20 class DtEnumerationNode;
21 class DtAttributeFedNode;
22 class DtParameterFedNode;
23 class DtExerciseConn;
26 
28 {
29 
30 public:
31 
34 
36  virtual ~DtOMTFileReader();
37 
41  virtual DtOMTTree* readFile(const DtString& str, DtExerciseConn* ex = 0);
42 
43  virtual const DtString& getLastError();
44  virtual void clearLastError();
45 
46 protected:
47 
48  virtual DtOMTTree* processObjectModel(DtlObjPtr& ptr);
49 
50  virtual void processName(DtlObjPtr& ptr, DtOMTTree*);
51  virtual void processVersionNo(DtlObjPtr& ptr, DtOMTTree*);
52  virtual void processType(DtlObjPtr& ptr, DtOMTTree*);
53  virtual void processPurpose(DtlObjPtr& ptr, DtOMTTree*);
54  virtual void processApplicationDomain(DtlObjPtr& ptr, DtOMTTree*);
55  virtual void processSponsorOrgName(DtlObjPtr& ptr, DtOMTTree*);
56  virtual void processModificationDate(DtlObjPtr& ptr, DtOMTTree*);
57  virtual void processMOMVersion(DtlObjPtr& ptr, DtOMTTree*);
58  virtual void processComplexDataType(DtlObjPtr& ptr, DtOMTTree*);
59  virtual void processEnumeratedDataType(DtlObjPtr& ptr, DtOMTTree*);
60  virtual void processNote(DtlObjPtr& ptr, DtOMTTree*);
61  virtual void processObjectClass(DtlObjPtr& ptr, DtOMTTree*);
62  virtual void processInteractionClass(DtlObjPtr& ptr, DtOMTTree*);
63 
64  DtComplexComponentNode* processComplexComponent(DtlObjPtr& ptr);
65  DtEnumerationNode* processEnumeration(DtlObjPtr& ptr);
66  DtAttributeFedNode* processAttribute(DtlObjPtr& ptr);
67  DtParameterFedNode* processParameter(DtlObjPtr& ptr);
68 
69 protected:
70 
72  // get the object class and attribute handles and link the children nodes with their parents.
73  virtual void buildObjectClassTree(DtOMTTree* omtTree);
74 
76  // get the interaction class and parameter handles and link the children nodes with their parents.
77  virtual void buildInteractionClassTree(DtOMTTree* omtTree);
78 
79  //Helper function for build tree
80  virtual void setAttributeHandles(DtObjectClassFedNode* objNode);
81  virtual void setParameterHandles(DtInteractionClassFedNode* objNode);
82 
83 protected:
86 
87 private:
88 
90  DtOMTFileReader(const DtOMTFileReader& orig);
91 
93  DtOMTFileReader& operator=(const DtOMTFileReader& rhs);
94 
95 
96 
97 
98 };
99 
100 
101 #ifdef DtUSE_UTILITIES_NAMESPACE
102 } // end of namespace DtUSE_UTILITIES_NAMESPACE
103 #endif

Document ID: Generated on Mon Apr 8 04:49:21 EDT 2019 from SVN revision 197403
Copyright © 2005-2016 VT MÄK. All Rights Reserved (www.mak.com)