![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /******************************************************************************* 00002 ** Copyright (c) 1999 MaK Technologies, Inc. 00003 ** All rights reserved. 00004 *******************************************************************************/ 00005 /******************************************************************************* 00006 ** $RCSfile: dmgSurfEnt.h,v $ $Revision: 1.12 $ $State: Exp $ 00007 *******************************************************************************/ 00008 00011 00013 00014 #ifndef DtDmgSurfaceEntry_H_ 00015 #define DtDmgSurfaceEntry_H_ 00016 00017 #include "vrfutil/rdrWritr.h" 00018 #include <vlutil/vlMachineTypes.h> 00019 #include "vrfutil/rwList.h" 00020 00021 class DtString; 00022 class DtReaderWriterRegistry; 00023 class DtPrbRangeTableEntry; 00024 class DtDmgAngleOfIncidenceTable; 00025 00031 #include "vrfobjparam/vrfobjparamDefines.h" 00032 class DT_DLL_vrfobjparam DtDmgSurfaceEntry : public DtRwList 00033 { 00034 public: 00035 00036 //default constructor 00037 DtDmgSurfaceEntry(); 00038 00040 DtDmgSurfaceEntry(const DtString& surface, DtReaderWriterRegistry* 00041 parentRegistry = NULL); 00042 DtDmgSurfaceEntry(const DtSymbolString& surface, DtReaderWriterRegistry* 00043 parentRegistry = NULL); 00044 00046 DtDmgSurfaceEntry(const DtString& surface, const DtDmgSurfaceEntry& orig, 00047 DtReaderWriterRegistry* parentRegistry = NULL); 00048 DtDmgSurfaceEntry(const DtSymbolString& surface, const DtDmgSurfaceEntry& orig, 00049 DtReaderWriterRegistry* parentRegistry = NULL); 00050 00051 const DtDmgSurfaceEntry& operator=(const DtDmgSurfaceEntry & orig); 00052 00054 virtual ~DtDmgSurfaceEntry(); 00055 00056 virtual DtDmgSurfaceEntry* clone(const DtString& surface, 00057 DtReaderWriterRegistry* parentRegistry = NULL) const; 00058 virtual DtDmgSurfaceEntry* clone(const DtSymbolString& surface, 00059 DtReaderWriterRegistry* parentRegistry = NULL) const; 00060 00063 virtual void addAngleOfIncidenceTable(const DtDmgAngleOfIncidenceTable& angleTable); 00064 00070 virtual bool getProbabilities(DtReal angle, DtReal range, 00071 DtPrbRangeTableEntry * entry) const; 00072 00074 virtual double getMaximumDamageRadius(); 00075 00076 protected: 00077 00080 virtual DtlObjPtr getData(DtlObjPtr args, const DtFilename& searchPath, 00081 const DtVariableBindingsList& variableBindings); 00082 00083 virtual void emptyList(); 00084 virtual void copyList(const DtDmgSurfaceEntry & orig); 00085 virtual void addAngleOfIncidenceTable(DtDmgAngleOfIncidenceTable* angleTable); 00086 00087 }; 00088 00089 #endif 00090 00091 00092