Go to the documentation of this file.00001
00002
00003
00004
00007 #pragma once
00008
00009 #include "omtNode.h"
00010
00011 #include <vlutil/vlString.h>
00012
00013 class DT_DLL_OMTREADER DtArrayDatatypeNode : public DtOMTNode
00014 {
00015 public:
00016
00017 enum DtCardinalityType
00018 { DtUndefined = 0,
00019 DtFixed,
00020 DtRange,
00021 DtConditional,
00022 DtZeroTerminated,
00023 DtLocation,
00024 DtExternalCount,
00025 DtBitArray,
00026 DtArraySize
00027 };
00028
00030 DtArrayDatatypeNode();
00031
00033 DtArrayDatatypeNode(const DtArrayDatatypeNode& orig);
00034
00036 DtArrayDatatypeNode& operator=(const DtArrayDatatypeNode& rhs);
00037
00039 virtual ~DtArrayDatatypeNode();
00040
00041 virtual void setDatatype(const DtString&);
00042 virtual const DtString& getDatatype();
00043
00044 virtual void setCardinality(const DtString&);
00045 virtual const DtString& getCardinality();
00046
00047 virtual void setEncoding(const DtString&);
00048 virtual const DtString& getEncoding();
00049
00050 virtual void setDescription(const DtString&);
00051 virtual const DtString& getDescription();
00052
00053 virtual DtCardinalityType getCardinalityType();
00054 virtual int getMinimumCardinality();
00055 virtual int getMaximumCardinality();
00056
00057 protected:
00058
00059 virtual void setDerivedValues();
00060
00061 protected:
00062 DtString myDatatype;
00063 DtString myCardinality;
00064 DtString myEncoding;
00065 DtString myDescription;
00066
00067 DtCardinalityType myCardinalityType;
00068 int myMinimumCardinality;
00069 int myMaximumCardinality;
00070 };
00071
00072