Emergency 20 Dokumentation  4.2.0
GameDebugGroup.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 
15 #include <qsf/log/LogSystem.h>
20 
21 
22 //[-------------------------------------------------------]
23 //[ Namespace ]
24 //[-------------------------------------------------------]
25 namespace em5
26 {
27 
28 
29  //[-------------------------------------------------------]
30  //[ Classes ]
31  //[-------------------------------------------------------]
36  class EM5_API_EXPORT GameDebugGroup : public qsf::DebugGroup, public qsf::UniqueInstance<GameDebugGroup>
37  {
38 
39 
40  //[-------------------------------------------------------]
41  //[ Public definitions ]
42  //[-------------------------------------------------------]
43  public:
44  static const uint32 PLUGINABLE_ID;
46  static const uint32 SHOW_HEALTH_STATE;
49  static const uint32 SHOW_FIRE_DEBUG;
50  static const uint32 SHOW_FIRE_RADIUS;
51  static const uint32 SHOW_FIRE_RECEIVER;
52  static const uint32 HIDE_USER_INTERFACE;
53  static const uint32 STARTUP_MAP;
54  static const uint32 ACTIVE_FREEPLAY;
55  static const uint32 ACTIVE_CIVILSPAWN;
56  static const uint32 SHOW_EVENT_DENSITY;
63 
64 
65  //[-------------------------------------------------------]
66  //[ Public methods ]
67  //[-------------------------------------------------------]
68  public:
76  explicit GameDebugGroup(qsf::DebugGroupManager* debugGroupManager);
77 
82  virtual ~GameDebugGroup();
83 
91  inline bool getShowHealthState() const;
92 
100  void setShowHealthState(bool showHealthState);
101 
109  inline bool getShowEventDebug() const;
110 
115  void setActiveFreeplay(bool activeFreeplay);
116 
121  inline bool getShowEventDensity() const;
122 
127  void setShowEventDensity(bool showEventDensity);
128 
133  inline bool getShowEventFailConditions() const;
134 
139  void setShowEventFailConditions(bool showEventFailConditions);
140 
148  void setShowEventDebug(bool showEventDebug);
149 
154  inline bool getShowContaminationRadius() const;
155 
160  void setShowContaminationRadius(bool showContaminationRadius);
161 
166  inline bool getShowDebugTextComponent() const;
167 
172  void setShowDebugTextComponent(bool showDebugTextComponent);
173 
181  inline bool getShowFireDebug() const;
182 
190  void setShowFireDebug(bool showFireDebug);
191 
199  inline bool getShowFireRadius() const;
200 
208  void setShowFireRadius(bool showFireRadius);
209 
217  inline bool getShowFireReceiver() const;
218 
226  void setShowFireReceiver(bool showFireReceiver);
227 
232  inline bool getHideUserInterface() const;
233 
238  void setHideUserInterface(bool hideUserInterface);
239 
247  inline const qsf::AssetProxy& getStartupMap() const;
248 
256  void setStartupMap(const qsf::AssetProxy& startupMap);
257 
262  inline bool getActiveFreeplay() const;
263 
268  inline bool getShowAutomatismDebug() const;
269 
274  void setShowAutomatismDebug(bool showAutomatismDebug);
275 
280  inline bool getShowActivitiesDebug() const;
281 
286  void setShowActivitiesDebug(bool showActivitiesDebug);
287 
292  inline bool getShowDebugSelectionMarker() const;
293 
298  void setShowDebugSelectionMarker(bool showDebugSelectionMarker);
299 
304  inline qsf::LogMessage::SeverityLevel getShowLogSeverityLevel() const;
305 
310  inline void setShowLogSeverityLevel(qsf::LogMessage::SeverityLevel showLogSeverityLevel);
311 
312  QSF_DEFINE_SIMPLE_GETTER_AND_SETTER(EnableDebugInputHandler, const std::string&, mEnableDebugInputHandler)
313 
314 
315  //[-------------------------------------------------------]
316  //[ Private data ]
317  //[-------------------------------------------------------]
318  private:
319  // Connected to the CAMP reflection system
320  bool mShowEventDebug;
321  bool mShowEventDensity;
322  bool mShowEventFailConditions;
323  bool mShowHealthState;
324  bool mShowContaminationRadius;
325  bool mShowDebugTextComponent;
326  bool mShowFireDebug;
327  bool mShowFireRadius;
328  bool mShowFireReceiver;
329  bool mHideUserInterface;
330  qsf::AssetProxy mStartupMap;
331  bool mShowAutomatismDebug;
332  bool mShowActivitiesDebug;
333  bool mShowDebugSelectionMarker;
334  std::string mEnableDebugInputHandler;
335 
336  qsf::LogMessage::SeverityLevel mShowLogSeverityLevel;
337 
338  // TODO(mk) Move this to game, this is no debug value
339  bool mActiveFreeplay;
340 
341 
342  //[-------------------------------------------------------]
343  //[ CAMP reflection system ]
344  //[-------------------------------------------------------]
345  QSF_CAMP_RTTI() // Only adds the virtual method "campClassId()", nothing more
346 
347 
348  };
349 
350 
351 //[-------------------------------------------------------]
352 //[ Namespace ]
353 //[-------------------------------------------------------]
354 } // em5
355 
356 
357 //[-------------------------------------------------------]
358 //[ Implementation ]
359 //[-------------------------------------------------------]
360 #include "em5/debug/GameDebugGroup-inl.h"
361 
362 
363 //[-------------------------------------------------------]
364 //[ CAMP reflection system ]
365 //[-------------------------------------------------------]
Definition: ActionPriority.h:13
Abstract debug group class.
Definition: DebugGroup.h:39
static const uint32 SHOW_FIRE_RADIUS
"ShowFireRadius" unique class property ID inside the class
Definition: GameDebugGroup.h:50
unsigned int uint32
Definition: PlatformTypes.h:181
static const uint32 HIDE_USER_INTERFACE
"HideUserInterface" unique class property ID inside the class
Definition: GameDebugGroup.h:52
static const uint32 SHOW_ACTIVITIES_DEBUG
"ShowActivitiesDebug" unique class property ID inside the class
Definition: GameDebugGroup.h:59
static const uint32 ACTIVE_FREEPLAY
"ActiveFreeplay" unique class property ID inside the class
Definition: GameDebugGroup.h:54
#define EM5_API_EXPORT
Definition: Export.h:28
static const uint32 SHOW_AUTOMATISM_DEBUG
"ShowAutomatismDebug" unique class property ID inside the class
Definition: GameDebugGroup.h:58
static const uint32 SHOW_FIRE_RECEIVER
"ShowFireReceiver" unique class property ID inside the class
Definition: GameDebugGroup.h:51
Definition: AreaConfiguration.h:58
static const uint32 SHOW_DEBUG_TEXT_COMPONENT
"ShowDebugTextComponent" unique class property ID inside the class
Definition: GameDebugGroup.h:48
SeverityLevel
Severity levels.
Definition: LogSystem.h:46
static const uint32 ENABLE_DEBUG_INPUT_HANDLER
"EnableDebugInputHandler" unique class property ID inside the class
Definition: GameDebugGroup.h:62
static const uint32 SHOW_DEBUG_SELECTION_MARKER
"ShowDebugSelectionMarker" unique class property ID inside the class
Definition: GameDebugGroup.h:60
static const uint32 SHOW_CONTAMINATION_RADIUS
"ShowContaminationRadius" unique class property ID inside the class
Definition: GameDebugGroup.h:47
static const uint32 SHOW_LOG_SEVERITY_LEVEL
"ShowLogSeverityLevel" unique class property ID inside the class
Definition: GameDebugGroup.h:61
Definition: PickupPersonByParamedicAction.h:21
Debug group manager class.
Definition: DebugGroupManager.h:42
static const uint32 SHOW_FIRE_DEBUG
"ShowFireDebug" unique class property ID inside the class
Definition: GameDebugGroup.h:49
Unique instance interface.
Definition: UniqueInstance.h:34
Asset proxy class.
Definition: AssetProxy.h:57
#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 uint32 SHOW_HEALTH_STATE
"ShowHealthState" unique class property ID inside the class
Definition: GameDebugGroup.h:46
static const uint32 SHOW_FREEPLAY_EVENT_OBJECTIVES
"ShowEventDebug" unique class property ID inside the class
Definition: GameDebugGroup.h:45
static const uint32 ACTIVE_CIVILSPAWN
"ActiveCivilSpawn" unique class property ID inside the class
Definition: GameDebugGroup.h:55
#define QSF_DEFINE_SIMPLE_GETTER_AND_SETTER(name, type, variable)
Definition: PropertyHelper.h:16
static const uint32 PLUGINABLE_ID
"em5::GameDebugGroup" unique pluginable debug group ID
Definition: GameDebugGroup.h:44
static const uint32 SHOW_EVENT_FAILCONDITIONS
"ShowEventFailConditions" unique class property ID inside the class
Definition: GameDebugGroup.h:57
Game debug group implementation.
Definition: GameDebugGroup.h:36
static const uint32 SHOW_EVENT_DENSITY
"ShowEventDensity" unique class property ID inside the class
Definition: GameDebugGroup.h:56
static const uint32 STARTUP_MAP
"StartupMap" unique class property ID inside the class
Definition: GameDebugGroup.h:53