Kodi Documentation 18.0
Kodi is an open source media player and entertainment hub.
CVideoBufferPoolSysMem Class Reference

#include <VideoBuffer.h>

Inheritance diagram for CVideoBufferPoolSysMem:
IVideoBufferPool

Public Member Functions

 ~CVideoBufferPoolSysMem () override
 
CVideoBuffer * Get () override
 
void Return (int id) override
 
void Configure (AVPixelFormat format, int size) override
 
bool IsConfigured () override
 
bool IsCompatible (AVPixelFormat format, int size) override
 
void Discard (CVideoBufferManager *bm, ReadyToDispose cb) override
 
- Public Member Functions inherited from IVideoBufferPool
virtual ~IVideoBufferPool ()=default
 
virtual void Released (CVideoBufferManager &videoBufferManager)
 
std::shared_ptr< IVideoBufferPool > GetPtr ()
 

Static Public Member Functions

static std::shared_ptr< IVideoBufferPool > CreatePool ()
 

Protected Attributes

int m_width = 0
 
int m_height = 0
 
int m_size = 0
 
AVPixelFormat m_pixFormat = AV_PIX_FMT_NONE
 
bool m_configured = false
 
CCriticalSection m_critSection
 
CVideoBufferManager * m_bm = nullptr
 
ReadyToDispose m_cbDispose
 
std::vector< CVideoBufferSysMem * > m_all
 
std::deque< int > m_used
 
std::deque< int > m_free
 

Constructor & Destructor Documentation

◆ ~CVideoBufferPoolSysMem()

CVideoBufferPoolSysMem::~CVideoBufferPoolSysMem ( )
override

Member Function Documentation

◆ Configure()

void CVideoBufferPoolSysMem::Configure ( AVPixelFormat  format,
int  size 
)
overridevirtual

Reimplemented from IVideoBufferPool.

◆ CreatePool()

std::shared_ptr< IVideoBufferPool > CVideoBufferPoolSysMem::CreatePool ( )
static

◆ Discard()

void CVideoBufferPoolSysMem::Discard ( CVideoBufferManager *  bm,
ReadyToDispose  cb 
)
overridevirtual

Reimplemented from IVideoBufferPool.

◆ Get()

CVideoBuffer * CVideoBufferPoolSysMem::Get ( )
overridevirtual

Implements IVideoBufferPool.

◆ IsCompatible()

bool CVideoBufferPoolSysMem::IsCompatible ( AVPixelFormat  format,
int  size 
)
overridevirtual

Reimplemented from IVideoBufferPool.

◆ IsConfigured()

bool CVideoBufferPoolSysMem::IsConfigured ( )
inlineoverridevirtual

Reimplemented from IVideoBufferPool.

◆ Return()

void CVideoBufferPoolSysMem::Return ( int  id)
overridevirtual

Implements IVideoBufferPool.

Member Data Documentation

◆ m_all

std::vector<CVideoBufferSysMem*> CVideoBufferPoolSysMem::m_all
protected

◆ m_bm

CVideoBufferManager* CVideoBufferPoolSysMem::m_bm = nullptr
protected

◆ m_cbDispose

ReadyToDispose CVideoBufferPoolSysMem::m_cbDispose
protected

◆ m_configured

bool CVideoBufferPoolSysMem::m_configured = false
protected

◆ m_critSection

CCriticalSection CVideoBufferPoolSysMem::m_critSection
protected

◆ m_free

std::deque<int> CVideoBufferPoolSysMem::m_free
protected

◆ m_height

int CVideoBufferPoolSysMem::m_height = 0
protected

◆ m_pixFormat

AVPixelFormat CVideoBufferPoolSysMem::m_pixFormat = AV_PIX_FMT_NONE
protected

◆ m_size

int CVideoBufferPoolSysMem::m_size = 0
protected

◆ m_used

std::deque<int> CVideoBufferPoolSysMem::m_used
protected

◆ m_width

int CVideoBufferPoolSysMem::m_width = 0
protected

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