MAK Data Logger API Documentation for DIS
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
lgrPlaybackInterface.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 1992-2010 VT MAK
3 ** All rights reserved.
4 ******************************************************************************/
5 
8 
9 #ifndef lgrPlaybackInterface_H_
10 #define lgrPlaybackInterface_H_
11 
12 #include "lgrTimeInterface.h"
14 
15 #include <vlutil/vlString.h>
16 #include <lgrUtil/signalSlot.h>
17 
18 namespace MAKLogger
19 {
20  class DtLogger;
21  class DtLgrPlaybackDriver;
22  class DtLgrPlaybackCommandFactory;
23 
25  {
30  };
31 
36  {
37  public:
38 
39  //Used to shorten code.
41 
42  //Used to shorten code.
44 
46  static DtLgrPlaybackInterface* create(DtLogger&);
47 
50  static DtLgrPlaybackInterface* createNonThreadsafe(DtLogger& logger,
51  const DtLgrPlaybackDriver& driver);
52 
53  protected:
54 
57 
58  public:
59 
61  virtual ~DtLgrPlaybackInterface();
62 
63  private:
64 
69 
70  public:
71 
73 
76  virtual void openFile(const DtString& filename, bool checkMediaFile) const;
77 
79  virtual void closeFile() const;
80 
82  virtual void saveFile(const bool reopenAfterSave = true) const;
83 
86  virtual void saveFileAs(const DtString& filename, const DtString& description,
87  const bool writeDescription, const bool reopenAfterSave = true) const;
88 
90  virtual void revertFile() const;
91 
95  virtual void updateTapeDescription(const DtString description);
96 
98  virtual void play() const;
99 
101  virtual void stop() const;
102 
104  virtual void pause() const;
105 
107  virtual void unpause() const;
108 
110  virtual void togglePlayPause() const;
111 
113  virtual void restart() const;
114 
116  virtual void jumpToTime(DtAbsoluteTime time) const;
117 
120  virtual void setPlaybackSpeed(double speedMultiplier, bool skipping) const;
121 
124  virtual void setSkippingPlaybackThreshold(double skippingThreshold) const;
125 
127  virtual void setSkippingPlaybackInteractions(bool skippingInteractions) const;
128 
130  virtual void setPacketViewInterval(double viewInterval) const;
131 
133  virtual void setFollowingInterval(double interval) const;
134 
136  virtual void setFollowingExportInterval(double interval) const;
137 
139  virtual void setStartStopTimes(DtAbsoluteTime startTime,
140  DtAbsoluteTime stopTime) const;
141 
143  virtual void setLoopAtEnd(bool enable) const;
144 
146  virtual void setPlayOnLoad(bool playOnLoad) const;
147 
149  virtual void setBackupOnSave(bool backup) const;
150 
152  virtual void recoverLastPacket();
153 
155  virtual void setMediaPlaybackAdjustments(double speedFactor, DtRelativeTime offset) const;
156 
158  virtual void setMediaWindowHandle(void* windowHandle);
159 
161  virtual void setMediaStreamConfiguration(const DtString& streamConfiguration) const;
162 
164  virtual void setMediaWindowConfiguration(const DtString& streamConfiguration) const;
165 
167  virtual void setMediaStreamPipeline(const DtString& pipelines,
168  const DtString& mediaFile);
169 
171  virtual void setMediaWindowPipeline(const DtString& pipelines,
172  const DtString& mediaFile);
173 
175  virtual void setMediaPlayByDefault(bool window, bool stream) const;
176 
178  virtual void setMediaPlayToStreamParameters(const DtString&, int) const;
179 
181  virtual void exposePlaybackMedia();
182 
184 
185 
187 
190  virtual bool isFileLoaded() const;
191 
193  virtual bool isFileSaved() const;
194 
196  virtual bool isPlaying() const;
197 
199  virtual bool isStopped() const;
200 
202  virtual bool isPaused() const;
203 
205  virtual bool loopAtEnd() const;
206 
208  virtual bool playOnLoad() const;
209 
211  virtual const DtString& filename() const;
212 
214  virtual double playbackSpeed() const;
215 
217  virtual bool skippingPlayback() const;
218 
220  virtual double skippingPlaybackThreshold() const;
221 
223  virtual bool skippingPlaybackInteractions() const;
224 
226  virtual double packetViewInterval() const;
227 
229  virtual double followingInterval() const;
230 
232  virtual double followingExportInterval() const;
233 
235  virtual bool isFileFormatCurrent() const;
236 
238  virtual bool isFileIncomplete() const;
239 
241  virtual bool hasLastPacket() const;
242 
244  virtual bool lastPacketRecovered() const;
245 
248  virtual bool tapeDescriptionUpdated() const;
249 
251  virtual const DtString& tapeDescription() const;
252 
254  virtual int fileVersion() const;
255 
257  virtual bool isFileExpanding() const;
258 
260  virtual double mediaSpeedFactor() const;
261 
263  virtual DtRelativeTime mediaOffset() const;
264 
266  virtual const DtString& mediaStreamConfiguration() const;
267 
269  virtual const DtString& mediaWindowConfiguration() const;
270 
272  virtual bool mediaPlayInWindowByDefault() const;
273 
275  virtual bool mediaPlayToStreamByDefault() const;
276 
278  virtual bool mediaPlayInWindowActive() const;
279 
281  virtual DtPlayToStreamStatus mediaPlayToStreamStatus() const;
282 
284  virtual const DtString& mediaPlayHost() const;
285 
287  virtual int mediaPlayPort() const;
288 
290 
291 
293  DtValueSignal<DtString> fileOpenedSignal;
315 
320 
321  protected:
322 
324 
327  void fileOpened(DtResponse);
328 
330  void fileClosed(DtResponse);
331 
333  void fileChanged(DtResponse);
334 
336  void fileSaved(DtResponse);
337 
339  void playbackChanged(DtResponse);
340 
342  void playbackSpeedChanged(DtResponse);
343 
345  void skippingPlaybackChanged(DtResponse);
346 
348  void skippingPlaybackThresholdChanged(DtResponse);
349 
351  void skippingPlaybackInteractionsChanged(DtResponse);
352 
354  void packetViewIntervalChanged(DtResponse);
355 
357  void followingIntervalChanged(DtResponse);
358 
360  void followingExportIntervalChanged(DtResponse);
361 
363  void fileInvalid(DtResponse);
364 
366  void fileDoesNotExist(DtResponse);
367 
369  void fileIncomplete(DtResponse);
370 
372  void loopAtEndChanged(DtResponse);
373 
375  void playOnLoadChanged(DtResponse);
376 
378  void fileFormatCurrent(DtResponse);
379 
381  void pausedChanged(DtResponse);
382 
384  void tapeDescriptionChanged(DtResponse);
385 
387  void fileExpandingChanged(DtResponse);
388 
390  void jumpTimeChanged(DtResponse response);
391 
393  void mediaPlaybackAdjustmentsChanged(DtResponse response);
394 
396  void mediaPlayToStreamConfigurationChanged(DtResponse response);
397 
399  void mediaPlayInWindowConfigurationChanged(DtResponse response);
400 
402  void mediaPlayByDefaultChanged(DtResponse response);
403 
405  void mediaPlayToStreamParametersChanged(DtResponse response);
406 
408  void mediaPlayInWindowOperationActive(DtResponse response);
409 
411  void mediaPlayToStreamOperationStatus(DtResponse response);
412 
414 
416  void connectResponseHandlers();
417 
419  void connectResponse(DtLgrCommandId,
421 
422  protected:
423 
446  DtString myFilename;
456  DtString myMediaPlayHost;
458 
459  };
460 
461 }
462 
463 #endif
DtAbsoluteTime myJumpTime
Definition: lgrPlaybackInterface.h:449
DtValueSignal< DtPlayToStreamStatus > mediaPlayToStreamOperationSignal
Response signal handlers.
Definition: lgrPlaybackInterface.h:314
DtValueSignal< bool > playbackChangedSignal
Response signal handlers.
Definition: lgrPlaybackInterface.h:295
double myMediaSpeedFactor
Definition: lgrPlaybackInterface.h:450
DtString myMediaWindowConfiguration
Definition: lgrPlaybackInterface.h:453
Contains MAKLogger::DtSlot and MAKLogger::DtFunctionSlot and MAKLogger::DtMemberSlot and MAKLogger::S...
DtValueSignal< bool > mediaPlayToStreamByDefaultChangedSignal
Response signal handlers.
Definition: lgrPlaybackInterface.h:310
DtPlayToStreamStatus myMediaStreamOperationStatus
Definition: lgrPlaybackInterface.h:439
bool myPausedFlag
Definition: lgrPlaybackInterface.h:430
double myPlaybackSpeed
Definition: lgrPlaybackInterface.h:441
DtValueSignal< double > mediaSpeedFactorChangedSignal
Response signal handlers.
Definition: lgrPlaybackInterface.h:305
The class responsible for creating playback commands.
Definition: lgrPlaybackCommandFactory.h:23
bool mySkippingPlayback
Definition: lgrPlaybackInterface.h:434
DtValueSignal< DtString > fileDoesNotExistSignal
Response signal handlers.
Definition: lgrPlaybackInterface.h:318
bool myMediaPlayToStreamByDefault
Definition: lgrPlaybackInterface.h:455
Relative Time, an elapsed duration of time, no implied measurement, could be seconds/cycles or ticks ...
Definition: absoluteTime.h:28
bool myLoopAtEnd
Definition: lgrPlaybackInterface.h:426
DtValueSignal< double > followIntervalChangedSignal
Response signal handlers.
Definition: lgrPlaybackInterface.h:303
DtBoost::shared_ptr< const DtCommand > DtResponse
Definition: lgrCommand.h:174
Contains DT_VIRTUAL_CTR DT_VIRTUAL_CTR_DEFAULTS DT_VIRTUAL_COPY_ASSIGN DT_VIRTUAL_BASE_CTR DT_PURE_VI...
bool myHasLastPacketFlag
Definition: lgrPlaybackInterface.h:432
DtValueSignal< DtString > mediaPlayHostChangedSignal
Response signal handlers.
Definition: lgrPlaybackInterface.h:311
DtValueSignal< DtAbsoluteTime > jumpTimeChangedSignal
Response signal handlers.
Definition: lgrPlaybackInterface.h:302
The class responsible for interfacing with the logger playback functionality.
Definition: lgrPlaybackInterface.h:35
bool myPlayOnLoadFlag
Definition: lgrPlaybackInterface.h:427
DtValueSignal< DtString > mediaStreamConfigurationChangedSignal
Response signal handlers.
Definition: lgrPlaybackInterface.h:307
DtValueSignal< bool > mediaPlayInWindowOperationSignal
Response signal handlers.
Definition: lgrPlaybackInterface.h:313
bool myPlayingFlag
Definition: lgrPlaybackInterface.h:425
int myFileVersion
Definition: lgrPlaybackInterface.h:440
double myPacketViewInterval
Definition: lgrPlaybackInterface.h:443
DtString myTapeDescription
Definition: lgrPlaybackInterface.h:448
DtValueSignal< bool > mediaPlayInWindowByDefaultChangedSignal
Response signal handlers.
Definition: lgrPlaybackInterface.h:309
bool myMediaWindowOperationFlag
Definition: lgrPlaybackInterface.h:438
DtRelativeTime myMediaOffset
Definition: lgrPlaybackInterface.h:451
DtValueSignal< bool > pausedChangedSignal
Response signal handlers.
Definition: lgrPlaybackInterface.h:296
bool myFileSavedFlag
Definition: lgrPlaybackInterface.h:428
The class responsible for controlling the logger playback functionality.
Definition: lgrPlaybackDriver.h:36
Definition: lgrPlaybackInterface.h:29
DtValueSignal< DtString > fileInvalidSignal
Errors signals all alias the Last Error Message string.
Definition: lgrPlaybackInterface.h:317
bool myMediaPlayInWindowByDefault
Definition: lgrPlaybackInterface.h:454
DtPlayToStreamStatus
Definition: lgrPlaybackInterface.h:24
DtString myMediaPlayHost
Definition: lgrPlaybackInterface.h:456
DtValueSignal< double > followExportIntervalChangedSignal
Response signal handlers.
Definition: lgrPlaybackInterface.h:304
bool myFileLoadedFlag
Definition: lgrPlaybackInterface.h:424
Definition: lgrPlaybackInterface.h:26
#define DT_DLL_LGRCORE
Definition: lgrCore.h:19
bool myFileFormatCurrentFlag
Definition: lgrPlaybackInterface.h:429
DtLgrPlaybackCommandFactory Factory
Definition: lgrPlaybackInterface.h:40
bool myFileExpanding
Definition: lgrPlaybackInterface.h:437
double myFollowingExportInterval
Definition: lgrPlaybackInterface.h:445
DtValueSignal< int > mediaPlayPortChangedSignal
Response signal handlers.
Definition: lgrPlaybackInterface.h:312
DtString myLastErrorMessage
Definition: lgrPlaybackInterface.h:447
bool myFileIncompleteFlag
Definition: lgrPlaybackInterface.h:431
DtValueSignal< bool > fileExpandingSignal
Response signal handlers.
Definition: lgrPlaybackInterface.h:301
DtLogger provides the core system structure and controls the execution model for the underlying objec...
Definition: logger.h:35
Definition: lgrPlaybackInterface.h:27
DtValueSignal< DtRelativeTime > mediaOffsetChangedSignal
Response signal handlers.
Definition: lgrPlaybackInterface.h:306
DtValueSignal< bool > playOnLoadChangedSignal
Response signal handlers.
Definition: lgrPlaybackInterface.h:299
double myFollowingInterval
Definition: lgrPlaybackInterface.h:444
double mySkippingPlaybackThreshold
Definition: lgrPlaybackInterface.h:442
short DtLgrCommandId
Definition: lgrCommand.h:25
int myMediaPlayPort
Definition: lgrPlaybackInterface.h:457
bool myLastPacketRecovered
Definition: lgrPlaybackInterface.h:433
Definition: lgrPlaybackInterface.h:28
DtValueSignal< double > playbackSpeedChangedSignal
Response signal handlers.
Definition: lgrPlaybackInterface.h:297
bool myTapeDescriptionUpdated
Definition: lgrPlaybackInterface.h:436
DtValueSignal< bool > loopAtEndChangedSignal
Response signal handlers.
Definition: lgrPlaybackInterface.h:298
DtString myFilename
Definition: lgrPlaybackInterface.h:446
The class for interfacing with the loggers time state.
Definition: lgrTimeInterface.h:21
DtLgrPlaybackInterface ThisClass
Definition: lgrPlaybackInterface.h:43
Absolute Time, a particular measured instance in time, could be thought of as a set of relative times...
Definition: absoluteTime.h:82
Contains MAKLogger::DtLgrTimeInterface subclass of MAKLogger::DtLgrSystemInterface.
DtValueSignal< DtString > mediaWindowConfigurationChangedSignal
Response signal handlers.
Definition: lgrPlaybackInterface.h:308
DtString myMediaStreamConfiguration
Definition: lgrPlaybackInterface.h:452
DtValueSignal< bool > fileSaveChangedSignal
Response signal handlers.
Definition: lgrPlaybackInterface.h:300
bool mySkippingPlaybackInteractions
Definition: lgrPlaybackInterface.h:435

Document ID: Generated on Mon Mar 22 15:30:17 EDT 2021 from SVN revision 226440
Copyright © 2021 MAK Technologies. All Rights Reserved (www.mak.com)