Emergency 20 Dokumentation  4.2.0
DefectEboxEventFactory.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 //[-------------------------------------------------------]
14 
15 
16 //[-------------------------------------------------------]
17 //[ Forward declarations ]
18 //[-------------------------------------------------------]
19 namespace qsf
20 {
21  class Entity;
22 }
23 
24 
25 //[-------------------------------------------------------]
26 //[ Namespace ]
27 //[-------------------------------------------------------]
28 namespace em5
29 {
30 
31 
32  //[-------------------------------------------------------]
33  //[ Classes ]
34  //[-------------------------------------------------------]
40  {
41 
42 
43  //[-------------------------------------------------------]
44  //[ Public methods ]
45  //[-------------------------------------------------------]
46  public:
52 
57  virtual ~DefectEboxEventFactory();
58 
59 
60  //[-------------------------------------------------------]
61  //[ Public virtual em5::FreeplayEventFactory methods ]
62  //[-------------------------------------------------------]
63  public:
64  virtual FreeplayEvent* tryTriggerEvent() override;
65 
66 
67  //[-------------------------------------------------------]
68  //[ Protected methods ]
69  //[-------------------------------------------------------]
70  protected:
71  qsf::Entity* findCandidate() const;
72 
73 
74  //[-------------------------------------------------------]
75  //[ Private methods ]
76  //[-------------------------------------------------------]
77  private:
78  bool checkCandidate(qsf::Entity& entity) const;
79  bool checkIfNeededUnitsAreAvailable() const;
80 
81 
82  //[-------------------------------------------------------]
83  //[ CAMP reflection system ]
84  //[-------------------------------------------------------]
85  QSF_CAMP_RTTI() // Only adds the virtual method "campClassId()", nothing more
86 
87 
88  };
89 
90 
91 //[-------------------------------------------------------]
92 //[ Namespace ]
93 //[-------------------------------------------------------]
94 } // em5
95 
96 
97 //[-------------------------------------------------------]
98 //[ CAMP reflection system ]
99 //[-------------------------------------------------------]
Definition: ActionPriority.h:13
Entity class.
Definition: Entity.h:46
#define EM5_API_EXPORT
Definition: Export.h:28
Definition: PickupPersonByParamedicAction.h:21
#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
EMERGENCY 5 freeplay event factory base class.
Definition: FreeplayEventFactory.h:56
EMERGENCY 5 freeplay event factory for "defect ebox".
Definition: DefectEboxEventFactory.h:39
Abstract EMERGENCY 5 freeplay event base class.
Definition: FreeplayEvent.h:66