ADTF  3.18.2
IRecorderabstract

ADTFDAT File Recorder Service Control interface to control the ADTFDAT File Recorder. More...

Inheritance diagram for IRecorder:
[legend]

Public Types

enum  tState : uint32_t { Closed = 0 , Idle = 1 , Queueing = 2 , Recording = 3 }
 

Public Member Functions

 ADTF_IID (IRecorder, "recorder.ant.services.adtf.iid")
 Interface ID for the recorder service interface.
 
virtual tResult Start (const char *strFileName)=0
 Starts a new recording. More...
 
virtual tResult Stop (const char *strFileName)=0
 Stops an ongoing recording. More...
 
virtual tResult Split (const char *strFileName)=0
 Stops an ongoing recording and starts a new one. More...
 
virtual tResult GetTimeRange (tTimeStamp &tmFirstItem, tTimeStamp &tmLastItem) const =0
 Information interface to get the time range of the current opened files. More...
 
virtual tResult GetCurrentFileName (adtf::base::ant::IString &&strFileName) const =0
 Information interface to get the name of the currently opened file. More...
 
virtual IRecorder::tState GetCurrentState () const =0
 Information interface to get the current state of the Recorder. More...
 
- Public Member Functions inherited from IObject
 ADTF_IID (IObject, "object.ant.ucom.adtf.iid")
 Marks the IObject to be castable with the ucom_cast() More...
 

Additional Inherited Members

- Protected Member Functions inherited from IObject
 ~IObject ()=default
 Protected destructor --> Use implemented Destroy() instead of delete!
 

Detailed Description

ADTFDAT File Recorder Service Control interface to control the ADTFDAT File Recorder.

This interface enables you to control an instance of ADTFDAT File Recorder Streaming Sink.

ucom::object_ptr<IRecorder> pRecorder;
// MIND: This call will only succeed if a recorder is present and it will be called _AFTER_ the Streaming Graph has been constructed! (RL_StreamingGraph)
// But a Start call is only possible while RL_Running
if (IS_OK(get_recorder(pRecorder))
{
if (IS_OK(pRecorder->Start("c:/temp/my_test_file.adtfdat")))
{
//Recorder is now recording
}
}
///...
tResult get_recorder(adtf::ucom::ant::object_ptr< RecorderInterface > &pRecorder)
Gets the current registered recorder instance.
See also
Streaming Graph, ADTFDAT File Recorder

Definition at line 47 of file recorder_intf.h.

Member Enumeration Documentation

◆ tState

enum tState : uint32_t
Enumerator
Closed 

not initialized.

Idle 

waiting for a trigger to start recording.

Queueing 

waiting for trigger, items are kept in history buffer.

Recording 

recording.

Definition at line 54 of file recorder_intf.h.

Member Function Documentation

◆ GetCurrentFileName()

virtual tResult GetCurrentFileName ( adtf::base::ant::IString &&  strFileName) const
pure virtual

Information interface to get the name of the currently opened file.

Parameters
strFileName[out] String where to return the filenames to. (comma separated list)
Remarks
It will only return valid values if ERR_NOERROR is returned.
Return values
ERR_NOERRORState change succeded

◆ GetCurrentState()

virtual IRecorder::tState GetCurrentState ( ) const
pure virtual

Information interface to get the current state of the Recorder.

Remarks
It will only return valid values if ERR_NOERROR is returned.
Return values
�theState of the recorder

◆ GetTimeRange()

virtual tResult GetTimeRange ( tTimeStamp tmFirstItem,
tTimeStamp tmLastItem 
) const
pure virtual

Information interface to get the time range of the current opened files.

Parameters
tmFirstItemoutTime of the first item
tmLastItemoutTime of the last item
Remarks
It will only return valid values if ERR_NOERROR is returned.
Return values
ERR_NOERRORFile is at least opend and information where read.

◆ Split()

virtual tResult Split ( const char *  strFileName)
pure virtual

Stops an ongoing recording and starts a new one.

Parameters
[in]strFileNameThe name of the newly recorded file. Can be empty, to use a default.
Returns
Standard result.

◆ Start()

virtual tResult Start ( const char *  strFileName)
pure virtual

Starts a new recording.

Parameters
[in]strFileNameThe name of the recorded file. Can be empty, to use a default.
Returns
Standard result.

◆ Stop()

virtual tResult Stop ( const char *  strFileName)
pure virtual

Stops an ongoing recording.

Parameters
[in]strFileNameA new name for the recorded file. The recorded file will be moved to this. Can be empty.
Returns
Standard result.