MAK Data Logger API Documentation for HLA
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
lgrPlaybackMedia.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 1992-2016 VT MAK
3 ** All rights reserved.
4 ******************************************************************************/
5 
8 
9 #pragma once
10 
11 #ifdef GST_ENABLED
12 
14 
15 class DtString;
16 
17 namespace MAKLogger
18 {
19  class DtLogger;
20  class DtLgrPlaybackDriver;
21  class DtLgrGStreamerPipeline;
22  class DtLgrPlaybackInterface;
23 
30  class DT_DLL_LGRCORE DtLgrPlaybackMedia : public DtLgrPlaybackOperation
31  {
32  public:
33 
34  static double theSyncThreshold;
35 
37  DtLgrPlaybackMedia(DtLogger& logger, DtLgrPlaybackDriver* playbackDriver, double offset);
38 
40  virtual ~DtLgrPlaybackMedia();
41 
43  virtual bool configureOperation(const DtString& pipelineConfiguration,
44  const DtString& tapeFilePath);
45 
47  virtual void commandOperation();
48 
50 
53  void playbackStateChanged(const bool& state);
54 
56  void pausedChanged(const bool& isPaused);
57 
59  void playbackSpeedChanged(const double& speed);
60 
62  void jumpTimeChanged(const DtAbsoluteTime& jumpTime);
63 
65 
66  protected:
67 
69  virtual void setSynchronizeThreshold(double speed);
70 
72  virtual void synchronize();
73 
75 
78  virtual void doPlaybackStateChange(const bool& state);
79 
81  virtual void doPlaybackSpeedChange(const double& speed);
82 
85  virtual bool doJumpTime(const DtAbsoluteTime& jumpTime);
86 
88 
89  protected:
90 
92  DtLgrGStreamerPipeline* myGstreamerPipeline;
93 
94  double myOffset;
95  double mySpeed;
96  bool myJumpFailed;
97  double myLastTime;
98  double mySyncThreshold;
99  bool mySyncPause;
100  };
101 }
102 
103 #endif // GST_ENABLED
Contains MAKLogger::DtLgrPlaybackOperation class.
#define DT_DLL_LGRCORE
Definition: lgrCore.h:19
class DT_DLL_LGRUTIL DtAbsoluteTime
Definition: absoluteTime.h:22

Document ID: Generated on Thu Sep 2 15:35:22 EDT 2021 from SVN revision 233992
Copyright © 2021 MAK Technologies. All Rights Reserved (www.mak.com)