Emergency 20 Dokumentation  4.2.0
FireMaterial.h
Go to the documentation of this file.
1 // Copyright (C) 2012-2018 Promotion Software GmbH
2 
3 
4 //[-------------------------------------------------------]
5 //[ Header guard ]
6 //[-------------------------------------------------------]
7 #pragma once
8 
9 
10 //[-------------------------------------------------------]
11 //[ Includes ]
12 //[-------------------------------------------------------]
13 #include "em5/Export.h"
14 
18 
19 
20 //[-------------------------------------------------------]
21 //[ Namespace ]
22 //[-------------------------------------------------------]
23 namespace em5
24 {
25 
26 
27  //[-------------------------------------------------------]
28  //[ Classes ]
29  //[-------------------------------------------------------]
41  {
42 
43 
44  //[-------------------------------------------------------]
45  //[ Public static constants ]
46  //[-------------------------------------------------------]
47  public:
48  static const std::string DEFAULT_FIREMATERIAL_NAME;
49 
50 
51  //[-------------------------------------------------------]
52  //[ Public methods ]
53  //[-------------------------------------------------------]
54  public:
59  inline explicit FireMaterial(uint32 key);
60 
65  inline virtual ~FireMaterial();
66 
71  inline uint32 getFireMaterialId() const;
72 
77  inline void setFireMaterialId(uint32 id);
78 
83  inline const std::string& getName() const;
84 
89  inline void setName(const std::string& name);
90 
95  inline float getCombustionValue() const;
96 
101  inline void setCombustionValue(float combustionValue);
102 
107  inline qsf::Time getBurnTime() const;
108 
113  inline void setBurnTime(qsf::Time burnTime);
114 
122  float getLifeValue() const;
123 
131  void setLifeValue(float lifeValue);
132 
137  inline float getStartEnergyValue() const;
138 
143  inline void setStartEnergyValue(float startEnergyValue);
144 
149  inline float getMaxEnergyValue() const;
150 
155  inline void setMaxEnergyValue(float maxEnergyValue);
156 
161  inline qsf::Time getChargeTime() const;
162 
167  inline void setChargeTime(qsf::Time chargeTime);
168 
176  inline float getChargeValue() const;
177 
185  inline void setChargeValue(float chargeValue);
186 
191  inline float getSelfCoolingValue() const;
192 
197  inline void setSelfCoolingValue(float selfCoolingValue);
198 
203  inline float getFireResistance() const;
204 
209  inline void setFireResistance(float fireResistance);
210 
215  inline float getBlastForce() const;
216 
221  inline void setBlastForce(float blastForce);
222 
227  inline float getBlastRadius() const;
228 
233  inline void setBlastRadius(float blastRadius);
234 
239  inline bool canExplode() const;
240 
248  float getAmountChargeValue() const;
249 
250 
251  //[-------------------------------------------------------]
252  //[ Private data ]
253  //[-------------------------------------------------------]
254  private:
255  uint32 mFireMaterialId;
256  std::string mName;
257  float mCombustionsValue;
258  qsf::Time mBurnTime;
259  float mStartEnergyValue;
260  float mMaxEnergyValue;
261  qsf::Time mChargeTime;
262  float mSelfCoolingValue;
263  float mFireResistance;
264  float mBlastForce;
265  float mBlastRadius;
266 
267 
268  //[-------------------------------------------------------]
269  //[ CAMP reflection system ]
270  //[-------------------------------------------------------]
271  QSF_CAMP_RTTI() // Only adds the virtual method "campClassId()", nothing more
272 
273 
274  };
275 
276 
277 //[-------------------------------------------------------]
278 //[ Namespace ]
279 //[-------------------------------------------------------]
280 } // em5
281 
282 
283 //[-------------------------------------------------------]
284 //[ Implementation ]
285 //[-------------------------------------------------------]
287 
288 
289 //[-------------------------------------------------------]
290 //[ CAMP reflection system ]
291 //[-------------------------------------------------------]
Definition: ActionPriority.h:13
Object base class.
Definition: Object.h:68
unsigned int uint32
Definition: PlatformTypes.h:181
#define EM5_API_EXPORT
Definition: Export.h:28
Fire material class.
Definition: FireMaterial.h:40
#define QSF_CAMP_RTTI()
Only adds the virtual method "campClassId()", nothing more.
Definition: CampClass.h:75
#define QSF_CAMP_TYPE_NONCOPYABLE(type)
See "CAMP_TYPE_NONCOPYABLE" for details.
Definition: CampClass.h:112
static const std::string DEFAULT_FIREMATERIAL_NAME
Definition: FireMaterial.h:48
Data type for encapsulating time information. It might represents points in time and time spans...
Definition: Time.h:32