MythTV  master
Classes | Public Member Functions | Private Types | Private Member Functions | Private Attributes | Friends | List of all members
FIFOWriter Class Reference

#include <fifowriter.h>

Collaboration diagram for FIFOWriter:
Collaboration graph
[legend]

Classes

struct  fifo_buf
 

Public Member Functions

 FIFOWriter (int count, bool sync)
 
 FIFOWriter (const FIFOWriter &rhs)
 
 ~FIFOWriter (void)
 
bool FIFOInit (int id, const QString &desc, const QString &name, long size, int num_bufs)
 
void FIFOWrite (int id, void *buf, long size)
 
void FIFODrain (void)
 

Private Types

typedef struct FIFOWriter::fifo_buf fifo_buf_t
 

Private Member Functions

void FIFOWriteThread (int id)
 

Private Attributes

fifo_buf_t ** m_fifo_buf {nullptr}
 
fifo_buf_t ** m_fb_inptr {nullptr}
 
fifo_buf_t ** m_fb_outptr {nullptr}
 
FIFOThreadm_fifothrds {nullptr}
 
QMutex * m_fifo_lock {nullptr}
 
QWaitCondition * m_full_cond {nullptr}
 
QWaitCondition * m_empty_cond {nullptr}
 
QString * m_filename {nullptr}
 
QString * m_fbdesc {nullptr}
 
long * m_maxblksize {nullptr}
 
int * m_killwr {nullptr}
 
int * m_fbcount {nullptr}
 
int * m_fbmaxcount {nullptr}
 
int m_num_fifos
 
bool m_usesync
 

Friends

class FIFOThread
 

Detailed Description

Definition at line 30 of file fifowriter.h.

Member Typedef Documentation

◆ fifo_buf_t

Constructor & Destructor Documentation

◆ FIFOWriter() [1/2]

FIFOWriter::FIFOWriter ( int  count,
bool  sync 
)

Definition at line 25 of file fifowriter.cpp.

◆ FIFOWriter() [2/2]

FIFOWriter::FIFOWriter ( const FIFOWriter rhs)

◆ ~FIFOWriter()

FIFOWriter::~FIFOWriter ( void  )

Definition at line 47 of file fifowriter.cpp.

Member Function Documentation

◆ FIFOInit()

bool FIFOWriter::FIFOInit ( int  id,
const QString &  desc,
const QString &  name,
long  size,
int  num_bufs 
)

Definition at line 81 of file fifowriter.cpp.

Referenced by Transcode::TranscodeFile().

◆ FIFOWrite()

void FIFOWriter::FIFOWrite ( int  id,
void *  buf,
long  size 
)

Definition at line 191 of file fifowriter.cpp.

Referenced by Transcode::TranscodeFile().

◆ FIFODrain()

void FIFOWriter::FIFODrain ( void  )

Definition at line 235 of file fifowriter.cpp.

Referenced by Transcode::TranscodeFile().

◆ FIFOWriteThread()

void FIFOWriter::FIFOWriteThread ( int  id)
private

Definition at line 135 of file fifowriter.cpp.

Referenced by FIFOThread::run().

Friends And Related Function Documentation

◆ FIFOThread

friend class FIFOThread
friend

Definition at line 32 of file fifowriter.h.

Member Data Documentation

◆ m_fifo_buf

fifo_buf_t** FIFOWriter::m_fifo_buf {nullptr}
private

Definition at line 51 of file fifowriter.h.

Referenced by FIFOInit(), FIFOWriter(), FIFOWriteThread(), and ~FIFOWriter().

◆ m_fb_inptr

fifo_buf_t** FIFOWriter::m_fb_inptr {nullptr}
private

Definition at line 52 of file fifowriter.h.

Referenced by FIFODrain(), FIFOInit(), FIFOWrite(), FIFOWriter(), FIFOWriteThread(), and ~FIFOWriter().

◆ m_fb_outptr

fifo_buf_t** FIFOWriter::m_fb_outptr {nullptr}
private

Definition at line 53 of file fifowriter.h.

Referenced by FIFODrain(), FIFOInit(), FIFOWrite(), FIFOWriter(), FIFOWriteThread(), and ~FIFOWriter().

◆ m_fifothrds

FIFOThread* FIFOWriter::m_fifothrds {nullptr}
private

Definition at line 55 of file fifowriter.h.

Referenced by FIFOInit(), FIFOWriter(), and ~FIFOWriter().

◆ m_fifo_lock

QMutex* FIFOWriter::m_fifo_lock {nullptr}
private

Definition at line 56 of file fifowriter.h.

Referenced by FIFODrain(), FIFOWrite(), FIFOWriter(), FIFOWriteThread(), and ~FIFOWriter().

◆ m_full_cond

QWaitCondition* FIFOWriter::m_full_cond {nullptr}
private

Definition at line 57 of file fifowriter.h.

Referenced by FIFOWrite(), FIFOWriter(), FIFOWriteThread(), and ~FIFOWriter().

◆ m_empty_cond

QWaitCondition* FIFOWriter::m_empty_cond {nullptr}
private

Definition at line 58 of file fifowriter.h.

Referenced by FIFODrain(), FIFOWrite(), FIFOWriter(), FIFOWriteThread(), and ~FIFOWriter().

◆ m_filename

QString* FIFOWriter::m_filename {nullptr}
private

Definition at line 60 of file fifowriter.h.

Referenced by FIFOInit(), FIFOWriter(), FIFOWriteThread(), and ~FIFOWriter().

◆ m_fbdesc

QString* FIFOWriter::m_fbdesc {nullptr}
private

Definition at line 61 of file fifowriter.h.

Referenced by FIFOInit(), FIFOWrite(), FIFOWriter(), and ~FIFOWriter().

◆ m_maxblksize

long* FIFOWriter::m_maxblksize {nullptr}
private

Definition at line 63 of file fifowriter.h.

Referenced by FIFOInit(), FIFOWrite(), FIFOWriter(), and ~FIFOWriter().

◆ m_killwr

int* FIFOWriter::m_killwr {nullptr}
private

Definition at line 64 of file fifowriter.h.

Referenced by FIFODrain(), FIFOInit(), FIFOWriter(), FIFOWriteThread(), and ~FIFOWriter().

◆ m_fbcount

int* FIFOWriter::m_fbcount {nullptr}
private

Definition at line 65 of file fifowriter.h.

Referenced by FIFOInit(), FIFOWrite(), FIFOWriter(), and ~FIFOWriter().

◆ m_fbmaxcount

int* FIFOWriter::m_fbmaxcount {nullptr}
private

Definition at line 66 of file fifowriter.h.

Referenced by FIFOInit(), FIFOWrite(), FIFOWriter(), and ~FIFOWriter().

◆ m_num_fifos

int FIFOWriter::m_num_fifos
private

Definition at line 67 of file fifowriter.h.

Referenced by FIFODrain(), FIFOInit(), FIFOWrite(), and ~FIFOWriter().

◆ m_usesync

bool FIFOWriter::m_usesync
private

Definition at line 68 of file fifowriter.h.

Referenced by FIFOInit(), and FIFOWrite().


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