00001 /******************************************************************************* 00002 ** Copyright (c) 1992-2010 VT MAK 00003 ** All rights reserved. 00004 *******************************************************************************/ 00007 #pragma once 00008 00009 #include "omtNode.h" 00010 00011 #include "complexComponentNode.h" 00012 00013 #include <vlutil/vlString.h> 00014 00015 #include <list> 00016 #include <iterator> 00017 00022 class DT_DLL_OMTREADER DtComplexDatatypeNode : public DtOMTNode 00023 { 00024 public: 00025 00027 DtComplexDatatypeNode(); 00028 00030 virtual ~DtComplexDatatypeNode(); 00031 00033 DtComplexDatatypeNode(const DtComplexDatatypeNode& orig); 00034 00036 DtComplexDatatypeNode& operator=(const DtComplexDatatypeNode& rhs); 00037 00038 virtual void addComponentNode(DtComplexComponentNode*); 00039 00040 virtual DtComplexComponentNode* getComponentNode(const DtString& name); 00041 virtual std::list<DtComplexComponentNode*>::iterator getComponentNodeList(); 00042 virtual std::list<DtComplexComponentNode*>::iterator getComponentNodeEnd(); 00043 00044 00045 protected: 00046 std::list<DtComplexComponentNode*> myComponentNodes; 00047 }; 00048 00049