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-2025 MAK Technologies, Inc
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 
90  protected:
91 
93  DtLgrGStreamerPipeline* myGstreamerPipeline;
94 
95  double myOffset;
96  double mySpeed;
97  bool myJumpFailed;
98  double myLastTime;
99  double mySyncThreshold;
100  bool mySyncPause;
101  DtLgrPlaybackDriver* myDriver;
102  };
103 }
104 
105 #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 Dec 18 15:35:09 EST 2025 from SVN revision 282494
Copyright © 2024 MAK Technologies. All Rights Reserved (www.mak.com)