![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /******************************************************************************* 00002 ** Copyright (c) 1999 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *******************************************************************************/ 00005 /******************************************************************************* 00006 ** $RCSfile: intRsrc.h,v $ $Revision: 1.10 $ $State: Exp $ 00007 *******************************************************************************/ 00008 00012 00015 00016 #ifndef intRsrc_H_ 00017 #define intRsrc_H_ 00018 00019 #include <vlutil/vlMachineTypes.h> 00020 #include "vrfutil/rwInt.h" 00021 #include "vrfutil/simRsrc.h" 00022 00023 00024 00029 #include "vrfutil/vrfutilDefines.h" 00030 class DT_DLL_vrfutil DtIntegerResource : public DtSimResource 00031 { 00032 00033 public: 00034 00036 DtIntegerResource(); 00037 00042 DtIntegerResource(const DtString& resourceName, DtReaderWriterRegistry* 00043 parentRegistry = NULL); 00044 00046 DtIntegerResource(const DtIntegerResource& orig, DtReaderWriterRegistry* 00047 parentRegistry = 0); 00048 00049 protected: 00051 DtIntegerResource& operator=(const DtIntegerResource& orig); 00052 00053 public: 00055 virtual ~DtIntegerResource(); 00056 00058 virtual void updateAmountFromChildren(); 00059 00062 virtual void updateFullAmountFromChildren(); 00063 00065 virtual DtSimResource * clone(DtReaderWriterRegistry* parentRegistry = 0) 00066 const; 00067 00069 virtual DtString type() const; 00070 00072 virtual void distributeAmountToChildren(); 00073 00076 virtual void distributeFullAmountToChildren(); 00077 00080 virtual void setAmount(int amount); 00081 virtual int amount() const; 00082 00084 virtual void deplete(int amount = 1); 00085 00088 virtual void replenish(int amount = 1); 00089 00090 virtual void setFullAmount(int fullAmount); 00091 virtual int fullAmount() const; 00092 00093 virtual DtReal percentageFull() const; 00094 virtual void setPercentageFull(DtReal percent); 00095 00098 virtual int constrainAmount(int amount) const; 00099 00100 static DtSimResource* creator(); 00101 00104 virtual bool isEqual(const DtSimResource& res) const; 00105 00106 protected: 00107 00108 DtRwInt myAmount; 00109 DtRwInt myFullAmount; 00110 00111 }; 00112 00113 #endif