![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /******************************************************************************* 00002 ** Copyright (c) 2003 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *******************************************************************************/ 00005 /******************************************************************************* 00006 ** $RCSfile: detonationDesc.h,v $ $Revision: 1.4 $ $State: Exp $ 00007 *******************************************************************************/ 00008 00011 00012 #ifndef DtDetonationDescriptor_H_ 00013 #define DtDetonationDescriptor_H_ 00014 00015 #include "vrfutil/rdrWritr.h" 00016 #include "vrfutil/rwString.h" 00017 #include "vrfutil/rwVector.h" 00018 #include "vrfutil/rwInt.h" 00019 #include "vrfutil/rwEntType.h" 00020 #include "vrfobjparam/aPrtDescLst.h" 00021 #include <vl/detonateInter.h> 00022 #include "vrfutil/rwReal.h" 00023 00033 00034 #include "vrfobjcore/vrfobjcoreDefines.h" 00035 class DT_DLL_vrfobjcore DtDetonationDescriptor : public DtReaderWriter 00036 { 00037 public: 00038 00040 DtDetonationDescriptor(const DtString& name, DtReaderWriterRegistry* 00041 parentRegistry = NULL, bool readonly = false); 00042 DtDetonationDescriptor(const DtSymbolString& name, DtReaderWriterRegistry* 00043 parentRegistry = NULL, bool readonly = false); 00044 00046 virtual ~DtDetonationDescriptor(); 00047 00049 DtDetonationDescriptor(const DtString& name, const DtDetonationDescriptor& orig, 00050 DtReaderWriterRegistry* parentRegistry = NULL); 00051 DtDetonationDescriptor(const DtSymbolString& name, const DtDetonationDescriptor& orig, 00052 DtReaderWriterRegistry* parentRegistry = NULL); 00053 00055 DtDetonationDescriptor& operator=(const DtDetonationDescriptor& orig); 00056 00058 virtual DtDetonationDescriptor* clone(const DtString& name, 00059 DtReaderWriterRegistry* parentRegistry = NULL) const; 00060 virtual DtDetonationDescriptor* clone(const DtSymbolString& name, 00061 DtReaderWriterRegistry* parentRegistry = NULL) const; 00062 00065 virtual void setAttackerId(const DtGlobalObjectDesignator& globalId); 00066 virtual const DtGlobalObjectDesignator& attackerId() const; 00067 00070 virtual void setTargetId(const DtGlobalObjectDesignator& globalId); 00071 virtual const DtGlobalObjectDesignator& targetId() const; 00072 00076 virtual void setEventId(const DtEventId& eventId); 00077 virtual const DtEventId& eventId() const; 00078 00080 virtual void setAttackerName(const DtString& objectName); 00081 virtual const DtString& attackerName() const; 00082 00084 virtual void setTargetName(const DtString& objectName); 00085 virtual const DtString& targetName() const; 00086 00088 virtual void setVelocity(const DtVector& velocity); 00089 virtual const DtVector& velocity() const; 00090 00092 virtual void setEntityLocation(const DtVector& entityLocation); 00093 virtual const DtVector& entityLocation() const; 00094 00096 virtual void setWorldLocation(const DtVector& worldLocation); 00097 virtual const DtVector& worldLocation() const; 00098 00100 virtual void setResult(DtDetonationResult result); 00101 virtual DtDetonationResult result() const; 00102 00104 virtual void setFuzeType(DtDetonatorFuze fuze); 00105 virtual DtDetonatorFuze fuzeType() const; 00106 00108 virtual void setMunitionType(const DtEntityType& munType); 00109 virtual const DtEntityType& munitionType() const; 00110 00112 virtual void setQuantity(int quant); 00113 virtual int quantity() const; 00114 00116 virtual void setRate(int rate); 00117 virtual int rate() const; 00118 00120 virtual void setWarheadType(DtWarheadType type); 00121 virtual DtWarheadType warheadType() const; 00122 00124 virtual void setArtParts(const DtSimArtPartDescriptorList& artParts); 00125 virtual const DtSimArtPartDescriptorList& artParts() const; 00126 00129 virtual void setSimTime(DtTime time); 00130 virtual DtTime simTime() const; 00131 00132 protected: 00133 00138 DtGlobalObjectDesignator myAttackerId; 00139 DtGlobalObjectDesignator myTargetId; 00141 DtEventId myEventId; 00142 00146 00147 DtRwString myAttackerName; 00148 DtRwString myTargetName; 00149 DtRwVector myVelocity; 00150 DtRwVector myWorldLocation; 00151 DtRwVector myEntityLocation; 00152 DtRwInt myDetonationResult; 00153 DtRwEntityType myMunitionType; 00154 DtRwInt myWarheadType; 00155 DtRwInt myFuze; 00156 DtRwInt myQuantity; 00157 DtRwInt myRate; 00158 DtSimArtPartDescriptorList myArtPartDescriptorList; 00159 DtRwReal mySimTime; 00160 }; 00161 00162 #endif