22 #ifndef MYTHRECORDINGPLAYBACK_H 23 #define MYTHRECORDINGPLAYBACK_H 25 #include "proto/mythprotoplayback.h" 26 #include "proto/mythprototransfer.h" 27 #include "mythstream.h" 28 #include "mytheventhandler.h" 30 #define MYTH_RECORDING_CHUNK_SIZE 64000 31 #define MYTH_RECORDING_CHUNK_MIN 8000 32 #define MYTH_RECORDING_CHUNK_MAX 128000 46 bool IsOpen() {
return ProtoPlayback::IsOpen(); }
47 bool OpenTransfer(ProgramPtr recording);
49 bool TransferIsOpen();
51 void SetChunk(
unsigned size);
54 int64_t GetSize()
const;
55 int Read(
void *buffer,
unsigned n);
56 int64_t Seek(int64_t offset, WHENCE_t whence);
57 int64_t GetPosition()
const;
60 void HandleBackendMessage(EventMessagePtr msg);
64 unsigned m_eventSubscriberId;
65 ProtoTransferPtr m_transfer;
66 ProgramPtr m_recording;
67 volatile bool m_readAhead;
69 int _read(
void *buffer,
unsigned n);
70 int64_t _seek(int64_t offset, WHENCE_t whence);
73 struct {
unsigned pos;
unsigned len;
unsigned char * data; } m_buffer;
This is the main namespace that encloses all public classes.