CPPMyth
Library to interoperate with MythTV server
Loading...
Searching...
No Matches
Myth::RecordingPlayback Class Reference
Inheritance diagram for Myth::RecordingPlayback:
Collaboration diagram for Myth::RecordingPlayback:

Public Member Functions

 RecordingPlayback (EventHandler &handler)
 RecordingPlayback (const std::string &server, unsigned port)
bool Open ()
void Close ()
bool IsOpen ()
bool OpenTransfer (ProgramPtr recording)
void CloseTransfer ()
bool TransferIsOpen ()
void SetChunk (unsigned size)
int64_t GetSize () const
int Read (void *buffer, unsigned n)
int64_t Seek (int64_t offset, WHENCE_t whence)
int64_t GetPosition () const
void HandleBackendMessage (EventMessagePtr msg)

Private Member Functions

int _read (void *buffer, unsigned n)
int64_t _seek (int64_t offset, WHENCE_t whence)
Private Member Functions inherited from Myth::ProtoPlayback
 ProtoPlayback (const std::string &server, unsigned port)
void TransferDone (ProtoTransfer &transfer)
bool TransferIsOpen (ProtoTransfer &transfer)
int TransferRequestBlock (ProtoTransfer &transfer, void *buffer, unsigned n)
int64_t TransferSeek (ProtoTransfer &transfer, int64_t offset, WHENCE_t whence)
Private Member Functions inherited from Myth::ProtoBase
 ProtoBase (const std::string &server, unsigned port)
virtual unsigned GetProtoVersion () const
virtual std::string GetServer () const
virtual unsigned GetPort () const
virtual int GetSocketErrNo () const
virtual int GetSocket () const
virtual bool HasHanging () const
virtual void CleanHanging ()
virtual ERROR_t GetProtoError () const
bool OpenConnection (int rcvbuf)
void HangException ()
bool SendCommand (const char *cmd, bool feedback=true)
size_t GetMessageLength () const
bool ReadField (std::string &field)
bool IsMessageOK (const std::string &field) const
size_t FlushMessage ()
bool RcvMessageLength ()
ProgramPtr RcvProgramInfo ()
void MakeProgramInfo (const Program &program, std::string &msg)

Private Attributes

EventHandler m_eventHandler
unsigned m_eventSubscriberId
ProtoTransferPtr m_transfer
ProgramPtr m_recording
volatile bool m_readAhead
unsigned m_chunk
struct { 
   RingBuffer *   rbuf 
   RingBufferPacket *   packet 
   int   consumed 
m_buffer
Private Attributes inherited from Myth::ProtoBase
OS::Latch * m_latch
TcpSocket * m_socket
unsigned m_protoVersion
std::string m_server
unsigned m_port
bool m_hang
 Connection hang: while true allow retry.
bool m_tainted
 Connection has hung since last reset.
size_t m_msgLength
size_t m_msgConsumed

Additional Inherited Members

Private Types inherited from Myth::ProtoBase
enum  ERROR_t { ERROR_NO_ERROR = 0 , ERROR_SERVER_UNREACHABLE , ERROR_SOCKET_ERROR , ERROR_UNKNOWN_VERSION }

Detailed Description

Definition at line 40 of file mythrecordingplayback.h.

Constructor & Destructor Documentation

◆ RecordingPlayback() [1/2]

RecordingPlayback::RecordingPlayback ( EventHandler & handler)

Definition at line 40 of file mythrecordingplayback.cpp.

◆ RecordingPlayback() [2/2]

RecordingPlayback::RecordingPlayback ( const std::string & server,
unsigned port )

Definition at line 58 of file mythrecordingplayback.cpp.

◆ ~RecordingPlayback()

RecordingPlayback::~RecordingPlayback ( )

Definition at line 77 of file mythrecordingplayback.cpp.

Member Function Documentation

◆ _read()

int RecordingPlayback::_read ( void * buffer,
unsigned n )
private

Definition at line 214 of file mythrecordingplayback.cpp.

◆ _seek()

int64_t RecordingPlayback::_seek ( int64_t offset,
WHENCE_t whence )
private

Definition at line 268 of file mythrecordingplayback.cpp.

◆ Close()

void RecordingPlayback::Close ( )
virtual

Reimplemented from Myth::ProtoPlayback.

Definition at line 102 of file mythrecordingplayback.cpp.

◆ CloseTransfer()

void RecordingPlayback::CloseTransfer ( )

Definition at line 131 of file mythrecordingplayback.cpp.

◆ GetPosition()

int64_t RecordingPlayback::GetPosition ( ) const
virtual

Implements Myth::Stream.

Definition at line 278 of file mythrecordingplayback.cpp.

◆ GetSize()

int64_t RecordingPlayback::GetSize ( ) const
virtual

Implements Myth::Stream.

Definition at line 163 of file mythrecordingplayback.cpp.

◆ HandleBackendMessage()

void RecordingPlayback::HandleBackendMessage ( EventMessagePtr msg)
virtual

Implements Myth::EventSubscriber.

Definition at line 292 of file mythrecordingplayback.cpp.

◆ IsOpen()

bool Myth::RecordingPlayback::IsOpen ( )
inlinevirtual

Reimplemented from Myth::ProtoPlayback.

Definition at line 49 of file mythrecordingplayback.h.

◆ Open()

bool RecordingPlayback::Open ( )
virtual

Reimplemented from Myth::ProtoPlayback.

Definition at line 87 of file mythrecordingplayback.cpp.

◆ OpenTransfer()

bool RecordingPlayback::OpenTransfer ( ProgramPtr recording)

Definition at line 110 of file mythrecordingplayback.cpp.

◆ Read()

int RecordingPlayback::Read ( void * buffer,
unsigned n )
virtual

Implements Myth::Stream.

Definition at line 173 of file mythrecordingplayback.cpp.

◆ Seek()

int64_t RecordingPlayback::Seek ( int64_t offset,
WHENCE_t whence )
virtual

Implements Myth::Stream.

Definition at line 242 of file mythrecordingplayback.cpp.

◆ SetChunk()

void RecordingPlayback::SetChunk ( unsigned size)

Definition at line 154 of file mythrecordingplayback.cpp.

◆ TransferIsOpen()

bool RecordingPlayback::TransferIsOpen ( )

Definition at line 144 of file mythrecordingplayback.cpp.

Field Documentation

◆ consumed

int Myth::RecordingPlayback::consumed

Definition at line 76 of file mythrecordingplayback.h.

◆ m_chunk

unsigned Myth::RecordingPlayback::m_chunk
private

Definition at line 75 of file mythrecordingplayback.h.

◆ m_eventHandler

EventHandler Myth::RecordingPlayback::m_eventHandler
private

Definition at line 66 of file mythrecordingplayback.h.

◆ m_eventSubscriberId

unsigned Myth::RecordingPlayback::m_eventSubscriberId
private

Definition at line 67 of file mythrecordingplayback.h.

◆ m_readAhead

volatile bool Myth::RecordingPlayback::m_readAhead
private

Definition at line 70 of file mythrecordingplayback.h.

◆ m_recording

ProgramPtr Myth::RecordingPlayback::m_recording
private

Definition at line 69 of file mythrecordingplayback.h.

◆ m_transfer

ProtoTransferPtr Myth::RecordingPlayback::m_transfer
private

Definition at line 68 of file mythrecordingplayback.h.

◆ packet

RingBufferPacket* Myth::RecordingPlayback::packet

Definition at line 76 of file mythrecordingplayback.h.

◆ rbuf

RingBuffer* Myth::RecordingPlayback::rbuf

Definition at line 76 of file mythrecordingplayback.h.


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