10 #ifndef lgrRecordInterface_H_
11 #define lgrRecordInterface_H_
16 #include <vlutil/vlString.h>
22 class DtLgrRecordDriver;
23 class DtLgrRecordCommandFactory;
70 virtual void startNewFile(
const DtString& filename,
const DtString& description,
bool overwrite)
const;
73 virtual void recordToMultipleFiles(
const DtString& filename,
const DtString& description)
const;
77 virtual void closeFile()
const;
80 virtual void setStopCondition(
StopCondition,
bool close)
const;
90 virtual void setStopSize(DtU64 filesize)
const;
93 virtual void setPauseOnRecordAs(
bool record)
const;
96 virtual void record()
const;
99 virtual void pause()
const;
102 virtual void unpause()
const;
105 virtual void stop(
bool closeAndOpenForPlayback)
const;
109 int size,
int count,
DtAbsoluteTime time,
bool checkpointInteractions)
const;
112 virtual void cancelRecording()
const;
116 virtual void saveRecordedData(
const DtString& filename,
const DtString& description,
117 bool onlySinceLastSaveData,
double outputDuration)
const;
120 virtual void setRecordToMultipleFilesSettings(
double duration,
121 const DtString& namingConvention)
const;
124 virtual void setMediaStreamConfiguration(
const DtString& streamConfiguration)
const;
127 virtual void setMediaStreamPipeline(
const DtString& pipelines);
130 virtual void setIsRecordingMediaStream(
bool doRecord);
133 virtual void setMediaRecordStreamParameters(
int port)
const;
136 virtual void setMediaRecordByDefault(
bool enableRecord)
const;
144 virtual bool isFileLoaded()
const;
147 virtual bool isFileEmpty()
const;
150 virtual const DtString& filename()
const;
153 virtual bool isRecording()
const;
156 virtual bool isPaused()
const;
159 virtual bool isStopped()
const;
162 virtual bool pauseOnRecordAs()
const;
165 int checkpointPolicyId()
const;
168 int checkpointCount()
const;
171 int checkpointSize()
const;
177 bool interactionsCheckpointed()
const;
180 double multipleFileDuration()
const;
183 const DtString& multipleFileNamingConvention()
const;
186 virtual const DtString& mediaStreamConfiguration()
const;
189 bool isRecordingMediaStream()
const;
192 int mediaRecordPort()
const;
195 bool mediaRecordByDefault()
const;
208 void recordToMultipleFilesChanged(
DtResponse);
209 void mediaRecordFromStreamConfigurationChanged(
DtResponse response);
210 void mediaRecordStreamParametersChanged(
DtResponse response);
211 void mediaRecordByDefaultChanged(
DtResponse response);
212 void recordingMediaStreamChanged(
DtResponse response);
DtString myNewFileName
Definition: lgrRecordInterface.h:234
bool myIsFileLoadedFlag
Definition: lgrRecordInterface.h:239
DtString myMediaStreamConfiguration
Definition: lgrRecordInterface.h:248
DtValueSignal< bool > mediaRecordByDefaultChangedSignal
Response signal handlers.
Definition: lgrRecordInterface.h:225
DtValueSignal< int > mediaRecordPortChangedSignal
Response signal handlers.
Definition: lgrRecordInterface.h:224
int myCheckpointPolicy
Definition: lgrRecordInterface.h:241
Relative Time, an elapsed duration of time, no implied measurement, could be seconds/cycles or ticks ...
Definition: absoluteTime.h:28
bool myCheckpointInteractions
Definition: lgrRecordInterface.h:245
bool myIsRecordingMediaStream
Definition: lgrRecordInterface.h:249
Normal stop condition, stop when the user requests.
Definition: lgrRecordInterface.h:37
DtLgrRecordCommandFactory Factory
Definition: lgrRecordInterface.h:46
DtValueSignal< bool > recordingMediaStreamChangedSignal
Response signal handlers.
Definition: lgrRecordInterface.h:226
int myCheckpointCount
Definition: lgrRecordInterface.h:242
bool myPauseOnRecordAs
Definition: lgrRecordInterface.h:238
Stop when the max duration set is reached.
Definition: lgrRecordInterface.h:39
bool myEmptyFlag
Definition: lgrRecordInterface.h:240
The factory responsible for creating recording commands.
Definition: lgrRecordCommandFactory.h:24
DtValueSignal< bool > recordingPausedChangedSignal
Response signal handlers.
Definition: lgrRecordInterface.h:221
bool myMediaRecordByDefault
Definition: lgrRecordInterface.h:251
DtString myErrorMessage
Definition: lgrRecordInterface.h:235
Contains MAKLogger::DtAbsoluteTime and MAKLogger::DtRelativeTime classes.
The class responsible for controlling the logger recording functionality.
Definition: lgrRecordDriver.h:37
DtString myMultipleFileNamingConvention
Definition: lgrRecordInterface.h:247
bool myPausedFlag
Definition: lgrRecordInterface.h:237
Contains MAKLogger::DtCheckpointPolicy and MAKLogger::DtCheckpointBySize and MAKLogger::DtCheckpointB...
int myCheckpointSize
Definition: lgrRecordInterface.h:243
#define DT_DLL_LGRCORE
Definition: lgrCore.h:19
int myMediaRecordPort
Definition: lgrRecordInterface.h:250
bool myRecordingFlag
Definition: lgrRecordInterface.h:236
StopCondition
Stop conditions for the logger.
Definition: lgrRecordInterface.h:34
Stop when the max size is reached.
Definition: lgrRecordInterface.h:41
DtValueSignal< bool > pauseOnRecordAsChangedSignal
Response signal handlers.
Definition: lgrRecordInterface.h:222
std::shared_ptr< const DtCommand > DtResponse
Definition: lgrCommand.h:175
DtLogger provides the core system structure and controls the execution model for the underlying objec...
Definition: logger.h:35
The class responsible for interfacing with the logger recording functionality.
Definition: lgrRecordInterface.h:28
DtAbsoluteTime myCheckpointTime
Definition: lgrRecordInterface.h:244
DtValueSignal< bool > recordingChangedSignal
Response signal handlers.
Definition: lgrRecordInterface.h:220
short DtLgrCommandId
Definition: lgrCommand.h:25
DtValueSignal< DtString > newFileFailedSignal
Response signal handlers.
Definition: lgrRecordInterface.h:219
Policy
Definition: lgrCheckpointPolicy.h:37
The class for interfacing with the loggers time state.
Definition: lgrTimeInterface.h:21
DtValueSignal< DtString > mediaStreamConfigurationChangedSignal
Response signal handlers.
Definition: lgrRecordInterface.h:223
double myMultipleFileDuration
Definition: lgrRecordInterface.h:246
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.