Ring Daemon 16.0.0
Loading...
Searching...
No Matches
jami::Recordable Class Reference

#include <recordable.h>

Inheritance diagram for jami::Recordable:
Inheritance graph
Collaboration diagram for jami::Recordable:
Collaboration graph

Public Member Functions

virtual std::string getPath () const
 Return the file path for this recording.
 
bool isAudioOnly () const
 
bool isRecording () const
 Return recording state (true/false)
 
 Recordable ()
 
virtual bool startRecording (const std::string &path)
 Start recording.
 
virtual void stopRecording ()
 Stop recording.
 
virtual bool toggleRecording ()
 This method must be implemented for this interface as calls and conferences have different behavior.
 
virtual ~Recordable ()
 

Protected Attributes

std::mutex apiMutex_
 
bool isAudioOnly_ {false}
 
std::shared_ptr< MediaRecorderrecorder_
 
bool recording_ {false}
 

Detailed Description

Definition at line 27 of file recordable.h.

Constructor & Destructor Documentation

◆ Recordable()

jami::Recordable::Recordable ( )

Definition at line 28 of file recordable.cpp.

◆ ~Recordable()

jami::Recordable::~Recordable ( )
virtual

Definition at line 32 of file recordable.cpp.

Member Function Documentation

◆ getPath()

std::string jami::Recordable::getPath ( ) const
virtual

Return the file path for this recording.

Definition at line 35 of file recordable.cpp.

References recorder_.

Referenced by jami::Manager::answerCall(), and jami::Manager::peerAnsweredCall().

◆ isAudioOnly()

bool jami::Recordable::isAudioOnly ( ) const

Definition at line 106 of file recordable.cpp.

References isAudioOnly_.

◆ isRecording()

bool jami::Recordable::isRecording ( ) const
inline

◆ startRecording()

bool jami::Recordable::startRecording ( const std::string &  path)
virtual

Start recording.

Reimplemented in jami::Conference.

Definition at line 64 of file recordable.cpp.

References apiMutex_, jami::emitSignal(), isAudioOnly_, JAMI_ERR, recorder_, and recording_.

Referenced by jami::LocalRecorder::startRecording(), jami::Conference::startRecording(), and toggleRecording().

Here is the call graph for this function:

◆ stopRecording()

void jami::Recordable::stopRecording ( )
virtual

Stop recording.

Reimplemented in jami::Conference, and jami::LocalRecorder.

Definition at line 88 of file recordable.cpp.

References apiMutex_, jami::emitSignal(), JAMI_WARN, recorder_, and recording_.

Referenced by jami::Conference::stopRecording(), jami::LocalRecorder::stopRecording(), and toggleRecording().

Here is the call graph for this function:

◆ toggleRecording()

bool jami::Recordable::toggleRecording ( )
virtual

This method must be implemented for this interface as calls and conferences have different behavior.

Implementations must call the super method.

Reimplemented in jami::Call, jami::Conference, and jami::SIPCall.

Definition at line 44 of file recordable.cpp.

References jami::Manager::audioPreference, jami::emitSignal(), jami::fileutils::get_home_dir(), jami::AudioPreference::getRecordPath(), jami::Manager::instance(), JAMI_ERR, recorder_, recording_, startRecording(), and stopRecording().

Referenced by jami::Conference::toggleRecording().

Here is the call graph for this function:

Member Data Documentation

◆ apiMutex_

std::mutex jami::Recordable::apiMutex_
mutableprotected

Definition at line 67 of file recordable.h.

Referenced by isRecording(), startRecording(), and stopRecording().

◆ isAudioOnly_

bool jami::Recordable::isAudioOnly_ {false}
protected

◆ recorder_

◆ recording_

bool jami::Recordable::recording_ {false}
protected

Definition at line 68 of file recordable.h.

Referenced by isRecording(), startRecording(), stopRecording(), and toggleRecording().


The documentation for this class was generated from the following files: