VR-Link API Documentation for HLA Evolved
xmlEvolvedFileReader.h
Go to the documentation of this file.
00001 /*******************************************************************************
00002 ** Copyright (c) 1992-2010 VT MAK
00003 ** All rights reserved.
00004 *******************************************************************************/
00007 #pragma once
00008 
00009 #include <omtReader/omtReader.h>
00010 #include <vlutil/vlString.h>
00011 
00013 #include <mtl/xmlFedTags.h>
00014 #include <mtl/fedReader.h>
00015 
00016 class DtOMTTree;
00017 class DtComplexComponentNode;
00018 class DtEnumerationNode;
00019 class DtAttributeFedNode;
00020 class DtParameterFedNode;
00021 class DtObjectClassFedNode;
00022 class DtInteractionClassFedNode;
00023 class DtFieldComponentNode;
00024 class DtAlternativeComponentNode;
00025 class DtExerciseConn;
00026 
00027 class DT_DLL_OMTREADER DtXMLEvolvedFileReader
00028 {
00029 
00030 public: 
00031 
00033    DtXMLEvolvedFileReader();
00034    
00036    virtual ~DtXMLEvolvedFileReader();
00037 
00038    virtual const DtString& getLastError();
00039    virtual void clearLastError();
00040 
00041    virtual DtOMTTree* processObjectModel(xmlNodePtr& ptr);
00042 
00043 protected:
00044    virtual void processName(xmlNodePtr& ptr, DtOMTTree*);
00045    virtual void processVersionNo(xmlNodePtr& ptr, DtOMTTree*);
00046    virtual void processType(xmlNodePtr& ptr, DtOMTTree*);
00047    virtual void processPurpose(xmlNodePtr& ptr, DtOMTTree*);
00048    virtual void processApplicationDomain(xmlNodePtr& ptr, DtOMTTree*);
00049    virtual void processSponsorOrgName(xmlAttrPtr& ptr, DtOMTTree*);
00050    virtual void processPOCFirstName(xmlNodePtr& ptr, DtOMTTree*);
00051    virtual void processPOCOrgName(xmlNodePtr& ptr, DtOMTTree*);
00052    virtual void processPOCPhone(xmlNodePtr& ptr, DtOMTTree*);
00053    virtual void processPOCEmail(xmlNodePtr& ptr, DtOMTTree*);
00054    virtual void processModificationDate(xmlNodePtr& ptr, DtOMTTree*);
00055    virtual void processSecurityClassification(xmlNodePtr& ptr, DtOMTTree*);
00056    virtual void processReleaseRestriction(xmlNodePtr& ptr, DtOMTTree*);
00057    virtual void processDescription(xmlNodePtr& ptr, DtOMTTree*);
00058    virtual void processReference(xmlAttrPtr& ptr, DtOMTTree*);
00059    virtual void processOther(xmlAttrPtr& ptr, DtOMTTree*);
00060 
00061    virtual void processPoc(xmlNodePtr& ptr, DtOMTTree*);
00062 
00063    virtual void processInteractions(xmlNodePtr& ptr, DtOMTTree*);
00064    virtual DtInteractionClassFedNode* processInteractionClass(xmlNodePtr& ptr, DtOMTTree*);
00065    virtual DtAttributeFedNode* processAttribute(xmlNodePtr& ptr, DtObjectClassFedNode* obj);
00066    virtual DtParameterFedNode* processParameter(xmlNodePtr& ptr, DtInteractionClassFedNode* inter);
00067 
00068    virtual void processObjects(xmlNodePtr& ptr, DtOMTTree*);
00069    virtual DtObjectClassFedNode* processObjectClass(xmlNodePtr& ptr, DtOMTTree*);
00070 
00071    virtual void processNotes(xmlNodePtr& ptr, DtOMTTree*);
00072    virtual void processNote(xmlNodePtr& ptr, DtOMTTree*);
00073 
00074    virtual void processUpdateRates(xmlNodePtr& ptr, DtOMTTree*);
00075    virtual void processUpdateRate(xmlNodePtr& ptr, DtOMTTree*);
00076 
00077    virtual void processDatatypes(xmlNodePtr& ptr, DtOMTTree*);
00078    virtual void processSimpleDatatypes(xmlNodePtr& ptr, DtOMTTree*);
00079    virtual void processSimpleData(xmlNodePtr& ptr, DtOMTTree*);
00080    virtual void processArrayDatatypes(xmlNodePtr& ptr, DtOMTTree*);
00081    virtual void processArrayData(xmlNodePtr& ptr, DtOMTTree*);
00082    virtual void processFixedDatatypes(xmlNodePtr& ptr, DtOMTTree*);
00083    virtual void processFixedData(xmlNodePtr& ptr, DtOMTTree*);
00084    virtual DtFieldComponentNode* processField(xmlNodePtr& ptr);
00085    virtual void processBasicDataReps(xmlNodePtr& ptr, DtOMTTree*);
00086    virtual void processBasicDataRep(xmlNodePtr& ptr, DtOMTTree*);
00087    virtual void processVariantDatatypes(xmlNodePtr& ptr, DtOMTTree*);
00088    virtual void processVariantData(xmlNodePtr& ptr, DtOMTTree*);
00089    virtual DtAlternativeComponentNode* processAlternative(xmlNodePtr& ptr);
00090    virtual void processEnumeratedDatatype(xmlNodePtr& ptr, DtOMTTree*);
00091    virtual DtEnumerationNode* processEnumeration(xmlNodePtr& ptr);
00092    virtual void processEnumerations(xmlNodePtr& ptr, DtOMTTree*);
00093 
00094    virtual void processSwitches(xmlNodePtr& ptr, DtOMTTree*);
00095    virtual void processDimensions(xmlNodePtr& ptr, DtOMTTree*);
00096    virtual void processDimension(xmlNodePtr& ptr, DtOMTTree*);
00097    virtual void processTimeRepresentation(xmlNodePtr& ptr, DtOMTTree*);
00098    virtual void processSynchronizations(xmlNodePtr& ptr, DtOMTTree*);
00099    virtual void processSynchronization(xmlNodePtr& ptr, DtOMTTree*);
00100    virtual void processTags(xmlNodePtr& ptr, DtOMTTree*);
00101    virtual void processTag(xmlNodePtr& ptr, DtOMTTree*);
00102    virtual void processTransportations(xmlNodePtr& ptr, DtOMTTree*);
00103    virtual void processTransportation(xmlNodePtr& ptr, DtOMTTree*);
00104 
00106    virtual void processModelIdentification(xmlNodePtr& ptr, DtOMTTree*);
00107 
00108 protected:
00109    DtString myLastError;
00110    DtExerciseConn* myExConn;
00111 
00112 private:
00113    
00115    DtXMLEvolvedFileReader(const DtXMLEvolvedFileReader& orig);
00116    
00118    DtXMLEvolvedFileReader& operator=(const DtXMLEvolvedFileReader& rhs);
00119 
00121    void initializeHandles(DtOMTTree* omtTree);
00122    void setAttributeHandles(DtObjectClassFedNode* objNode);
00123    void setParameterHandles(DtInteractionClassFedNode* objNode);
00124 };
00125 
00126 
00127 

Document ID: Generated on Mon May 14 08:06:18 EDT 2012 from SVN revision 114750
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)