Lumiera  0.pre.03
»edit your freedom«
play-controller.cpp
Go to the documentation of this file.
1 /*
2  PlayProcess - frontend to control an play process
3 
4  Copyright (C) Lumiera.org
5  2011, Hermann Vosseler <Ichthyostega@web.de>
6 
7  This program is free software; you can redistribute it and/or
8  modify it under the terms of the GNU General Public License as
9  published by the Free Software Foundation; either version 2 of
10  the License, or (at your option) any later version.
11 
12  This program is distributed in the hope that it will be useful,
13  but WITHOUT ANY WARRANTY; without even the implied warranty of
14  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15  GNU General Public License for more details.
16 
17  You should have received a copy of the GNU General Public License
18  along with this program; if not, write to the Free Software
19  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
20 
21 * *****************************************************/
22 
23 
40 #include "lib/time/timevalue.hpp"
41 
42 //#include <string>
43 //#include <memory>
44 //#include <functional>
45 
46 namespace lumiera {
47 
48  using lib::time::Time;
49  using lib::time::Duration;
50  using lib::time::TimeSpan;
52 
53 
54 
55  /* ==== Play::Controller implementation ==== */
56 
59  void
61  {
62  UNIMPLEMENTED ("toggle play/pause state");
63  }
64 
65 
69  void
71  {
72  UNIMPLEMENTED ("scrubbing playback");
73  }
74 
75 
76  void
78  {
79  UNIMPLEMENTED ("adjust actual playback speed");
80  }
81 
82 
86  void
88  {
89  UNIMPLEMENTED ("jump to given time");
90  }
91 
92 
96  void
97  Play::Controller::controlPlayhead (time::Control<Time> & ctrl)
98  {
99  UNIMPLEMENTED ("install a controller for influencing the 'playhead position'");
100  }
101 
102 
106  void
107  Play::Controller::controlDuration (time::Control<Duration> & ctrl)
108  {
109  UNIMPLEMENTED ("install a controller for influencing the overall playback duration");
110  }
111 
112 
116  void
117  Play::Controller::controlLooping (time::Control<TimeSpan> & ctrl)
118  {
119  UNIMPLEMENTED ("install a controller for adjusting looped playback");
120  }
121 
122 
126  void
127  Play::Controller::useProxyMedia (bool)
128  {
129  UNIMPLEMENTED ("toggle the use of proxy(placeholder) media");
130  }
131 
132 
136  void
137  Play::Controller::setQuality (uint)
138  {
139  UNIMPLEMENTED ("adjust the quality level of the current render");
140  }
141 
142 
146  bool
147  Play::Controller::is_playing() const
148  {
149  UNIMPLEMENTED ("retrieve the playback state");
150  }
151 
152 
156  bool
157  Play::Controller::is_scrubbing() const
158  {
159  UNIMPLEMENTED ("retrieve the state of scrubbing playback");
160  }
161 
162 
166  double
167  Play::Controller::getSpeed() const
168  {
169  UNIMPLEMENTED ("retrieve the current playback speed");
170  }
171 
172 
176  uint
177  Play::Controller::getQuality() const
178  {
179  UNIMPLEMENTED ("retrieve the current render quality setting");
180  }
181 
182 
186  bool
187  Play::Controller::usesProxy() const
188  {
189  UNIMPLEMENTED ("determine if the current render/playback uses proxy media");
190  }
191 
192 
196  Play::Controller::operator weak_ptr<PlayProcess>() const
197  {
198  return weak_ptr<PlayProcess> (this->smPtr_);
199  }
200 
201 
202 
203 }
204 
205 
206 namespace steam{
207 namespace play{
208 
209 // using std::string;
210 // using lumiera::Subsys;
211 // using std::bind;
212 
213 
214  namespace { // hidden local details of the service implementation....
215 
216 
217 
218  } // (End) hidden service impl details
219 
220 
221 
222 
226 }} // namespace steam::play
void play(bool)
play/pause toggle
Frontend/Interface: controller-element to retrieve and change running time values.
Definition: control.hpp:134
void scrub(bool)
scrubbing playback
Steam-Layer implementation namespace root.
Playback/Render process within the Lumiera Player.
Lumiera&#39;s internal time value datatype.
Definition: timevalue.hpp:305
Functionality for driving and controlling an ongoing playback or render.
void adjustSpeed(double)
playback speed control
Lumiera public interface.
Definition: advice.cpp:113
Duration is the internal Lumiera time metric.
Definition: timevalue.hpp:474
A time interval anchored at a specific point in time.
Definition: timevalue.hpp:579
a family of time value like entities and their relationships.
Organisational unit of an ongoing render- or playback process.
void go(time::Time)
skip to the given point in time