Emergency 20 Dokumentation  4.2.0
SequencePlayer.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 
16 
17 
18 //[-------------------------------------------------------]
19 //[ Forward declarations ]
20 //[-------------------------------------------------------]
21 namespace qsf
22 {
23  namespace logic
24  {
25  class SequenceTrack;
27  }
28 }
29 
30 
31 //[-------------------------------------------------------]
32 //[ Namespace ]
33 //[-------------------------------------------------------]
34 namespace em5
35 {
36 
37 
38  //[-------------------------------------------------------]
39  //[ Classes ]
40  //[-------------------------------------------------------]
46  {
47 
48 
49  //[-------------------------------------------------------]
50  //[ Public methods ]
51  //[-------------------------------------------------------]
52  public:
58 
63  virtual ~SequencePlayer();
64 
65 
66  //[-------------------------------------------------------]
67  //[ Protected virtual qsf::logic::SequencePlayer methods ]
68  //[-------------------------------------------------------]
69  protected:
70  virtual void onStartSequence() override;
71  virtual void onEndSequence() override;
72  virtual void onNotifyTimePassed(float oldTime, float newTime) override;
73 
74 
75  //[-------------------------------------------------------]
76  //[ Private declarations ]
77  //[-------------------------------------------------------]
78  private:
79  struct PathMovementPlaybackData
80  {
82  bool mActive;
83  bool mMovableWasActive;
84  bool mAiNavigationWasActive;
85  };
86  typedef std::list<PathMovementPlaybackData> PathMovementPlaybackList;
87 
88 
89  //[-------------------------------------------------------]
90  //[ Private methods ]
91  //[-------------------------------------------------------]
92  private:
93  void checkPathMovementPlayback(PathMovementPlaybackData& playbackData, bool shouldBeActive);
94 
95 
96  //[-------------------------------------------------------]
97  //[ Private data ]
98  //[-------------------------------------------------------]
99  private:
100  PathMovementPlaybackList mPathMovementPlaybackList;
101 
102 
103  };
104 
105 
106 //[-------------------------------------------------------]
107 //[ Namespace ]
108 //[-------------------------------------------------------]
109 } // em5
Definition: ActionPriority.h:13
Abstract sequence track base class.
Definition: SequenceTrack.h:50
#define EM5_API_EXPORT
Definition: Export.h:28
Path movement sequence track class.
Definition: SequenceTrackPathMovement.h:109
Definition: PickupPersonByParamedicAction.h:21
EMERGENCY 5 sequence player class.
Definition: SequencePlayer.h:45
Sequence player class.
Definition: SequencePlayer.h:48