10 #ifndef lgrRecordDriver_H_
11 #define lgrRecordDriver_H_
16 #include <vlutil/vlRunnable.h>
22 class DtCheckpointPolicy;
24 class DtLgrContinuousClock;
26 class DtLgrFileOutput;
27 class DtLgrPlaybackDriver;
28 class DtLgrRecordCommandFactory;
29 class DtLgrRecordInterface;
30 class DtMessagePipeline;
31 class DtThreadedObject;
32 class DtLgrRecordMediaStream;
50 virtual
bool releasePipeline();
51 virtual
bool getPipeline();
52 virtual
bool hasPipeline() const;
54 virtual
bool isFileOpen() const;
55 virtual
bool isFileEmpty() const;
57 virtual
bool isRecording() const;
58 virtual
bool isPaused() const;
61 virtual
bool pauseOnRecordAs() const;
64 virtual
int checkpointPolicyId() const;
67 virtual
int checkpointCount() const;
70 virtual
int checkpointSize() const;
76 bool interactionsCheckpointed() const;
80 virtual const DtString& filename() const;
89 virtual
bool recordToMultipleFiles() const;
92 virtual
double multipleFileDuration() const;
95 virtual const DtString& multipleFileNamingConvention() const;
101 virtual
void addTemporaryTrackedEntity(const DtString& name);
104 virtual const DtString& streamPipeline() const;
107 virtual const DtString& streamConfiguration() const;
109 const DtString& selectedMediaStreamConfigurations() const;
112 bool isRecordingMediaStream() const;
115 bool mediaRecordByDefault() const;
118 int mediaRecordPort() const;
121 virtual
void stopAllThreads();
135 virtual
void tickNormalRecording();
140 virtual
void tickRecordToMultipleFiles(
double multipleFileDuration,
bool final = false);
142 virtual
void configurePipeline();
145 virtual
void activateIdleListening();
147 virtual
bool doNewFile(DtString filename, DtString description,
bool overwrite);
148 virtual
bool doRecord(
bool multipleFiles);
149 virtual
bool doStop();
150 virtual
bool doPause();
151 virtual
bool doUnpause();
154 virtual DtString multipleFileName() const;
160 virtual DtString multiFileDescription(
bool final);
164 virtual
void createMediaPipeline(const DtString& pipelineConfigurations,
165 const DtString tapeFilePath,
int port);
199 int packetOperationCount,
double fixedDuration,
DtRelativeTime offset);