source: pacpusframework/trunk/include/Pacpus/DbitePlayer/DbtPlyEngineStateChart.h@ 66

Last change on this file since 66 was 66, checked in by Marek Kurdej, 11 years ago

Documentation: file info.

  • Property svn:keywords set to Id
File size: 3.1 KB
Line 
1// This file is part of the PACPUS framework distributed under the
2// CECILL-C License, Version 1.0.
3//
4/// @file
5/// @author Elie Al Alam <firstname.surname@utc.fr>
6/// @author Gerald Dherbomez <firstname.surname@utc.fr>
7/// @author Marek Kurdej <firstname.surname@utc.fr>
8/// @date April, 2007
9/// @version $Id: DbtPlyEngineStateChart.h 66 2013-01-09 16:54:11Z kurdejma $
10/// @copyright Copyright (c) UTC/CNRS Heudiasyc 2006 - 2013. All rights reserved.
11/// @brief DbitePlayer state machine.
12///
13/// Detailed description.
14
15#ifndef DEF_PACPUS_DBTPLYENGINESTATECHART_H
16#define DEF_PACPUS_DBTPLYENGINESTATECHART_H
17
18#include <QString>
19
20#include <Pacpus/DbitePlayer/DbitePlayerConfig.h>
21
22namespace pacpus {
23
24class DbtPlyEngine;
25
26////////////////////////////////////////////////////////////////////////////////
27class DBITE_PLAYER_API DbtPlyEngineState
28{
29public:
30 /// @todo Documentation
31 virtual ~DbtPlyEngineState();
32
33 /// @todo Documentation
34 virtual void play(DbtPlyEngine & engine);
35 /// @todo Documentation
36 virtual void pause(DbtPlyEngine & engine);
37 /// @todo Documentation
38 virtual void stop(DbtPlyEngine & engine);
39
40 /// @todo Documentation
41 virtual void speedUp(DbtPlyEngine & engine);
42 /// @todo Documentation
43 virtual void speedDown(DbtPlyEngine & engine);
44
45 /// @todo Documentation
46 virtual bool isPlaying();
47
48 /// @todo Documentation
49 virtual QString toString() const = 0;
50
51protected:
52 /// @todo Documentation
53 DbtPlyEngineState();
54};
55
56////////////////////////////////////////////////////////////////////////////////
57class DBITE_PLAYER_API PlayingState
58 : public DbtPlyEngineState
59{
60public:
61 /// @todo Documentation
62 virtual void pause(DbtPlyEngine & engine);
63 /// @todo Documentation
64 virtual void stop(DbtPlyEngine & engine);
65
66 /// @todo Documentation
67 virtual bool isPlaying();
68
69 /// @todo Documentation
70 virtual QString toString() const;
71 /// @todo Documentation
72 static DbtPlyEngineState * getInstance();
73
74private:
75 PlayingState();
76 static PlayingState mInstance;
77};
78
79////////////////////////////////////////////////////////////////////////////////
80class DBITE_PLAYER_API PausedState
81 : public DbtPlyEngineState
82{
83public:
84 /// @todo Documentation
85 virtual void play(DbtPlyEngine & engine);
86 /// @todo Documentation
87 virtual void stop(DbtPlyEngine & engine);
88
89 /// @todo Documentation
90 virtual QString toString() const;
91 /// @todo Documentation
92 static DbtPlyEngineState * getInstance();
93
94private:
95 PausedState();
96 static PausedState mInstance;
97};
98
99////////////////////////////////////////////////////////////////////////////////
100class DBITE_PLAYER_API StoppedState
101 : public DbtPlyEngineState
102{
103public:
104 /// @todo Documentation
105 virtual void play(DbtPlyEngine & engine);
106
107 /// @todo Documentation
108 virtual QString toString() const;
109 /// @todo Documentation
110 static DbtPlyEngineState * getInstance();
111
112private:
113 StoppedState();
114 static StoppedState mInstance;
115};
116
117} // namespace pacpus
118
119#endif // DEF_PACPUS_DBTPLYENGINESTATECHART_H
Note: See TracBrowser for help on using the repository browser.