Go to the documentation of this file.00001
00002
00003
00004
00005
00008
00009
00010 #ifndef lgrDisArtPartList_H_
00011 #define lgrDisArtPartList_H_
00012
00013 #if DtDIS
00014
00015 #include "lgrSim.h"
00016
00017 #include "uniqEntryArr.h"
00018 #include "lgrDisArtPart.h"
00019
00020 #include <vlutil/vlList.h>
00021 #include <vlutil/vlTime.h>
00022 #include <vlpi/NetStructs.h>
00023
00024 namespace MAKLogger
00025 {
00026
00027
00031 class DT_DLL_LGRSIM DtLgrArtPartList
00032 {
00033 public:
00035 DtLgrArtPartList();
00036
00038 virtual ~DtLgrArtPartList();
00039
00041 DtLgrArtPartList( const DtLgrArtPartList& src );
00042
00044 DtLgrArtPartList& operator=( const DtLgrArtPartList& src );
00045
00046 public:
00053 virtual bool init( const DtArtPartSpec* partSpecs );
00054
00058 virtual bool init( int numParams, const DtNetArtParamRecord* netParams,
00059 int& numAttachPartRecords, int& numAttachPartRecordsCopied,
00060 char* bfr, int bsz );
00061
00064 void clear();
00065
00067 int fillNetParams( DtNetArtParamRecord* netParams ) const;
00068
00072 virtual bool setArtParamVal(
00073 int partType, int paramType, DtFloat32 val );
00074 virtual bool getArtParamVal(
00075 int partType, int paramType, DtFloat32& val ) const;
00076
00078 virtual int numArtParts() const;
00079
00081 virtual int numArtParams() const;
00082
00084 virtual DtLgrArtPart* artPartFromPartNum( int partNum ) const;
00085
00087 virtual DtLgrArtPart* artPartFromPartType( int partType ) const;
00088
00090 virtual int partNumFromPartType( int partType ) const;
00091
00092 public:
00094 virtual void print() const;
00095 virtual void print( DtString& str ) const;
00096
00097 protected:
00099 bool copyInstance( const DtLgrArtPartList& src );
00101 bool resize( int numParts );
00102
00103 public:
00106 static bool partNotAttached( const DtNetArtParamRecord* param );
00107
00108 protected:
00109 DtUniqueEntryArrWData myPartTypes;
00110 DtLgrArtPart** myPartList;
00111 int myPartListSize;
00112 };
00113
00114 }
00115
00116 #endif //! !DtHLA
00117 #endif //! DtLgrArtPartList_DIS_H_
00118