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

#include <DRMUtils.h>

Inheritance diagram for CDRMUtils:
CDRMAtomic CDRMLegacy COffScreenModeSetting

Public Member Functions

 CDRMUtils ()
 
virtual ~CDRMUtils ()=default
 
virtual void FlipPage (struct gbm_bo *bo, bool rendered, bool videoLayer)
 
virtual bool SetVideoMode (const RESOLUTION_INFO &res, struct gbm_bo *bo)
 
virtual bool SetActive (bool active)
 
virtual bool InitDrm ()
 
virtual void DestroyDrm ()
 
std::string GetModule () const
 
std::string GetDevicePath () const
 
int GetFileDescriptor () const
 
struct planeGetPrimaryPlane () const
 
struct planeGetOverlayPlane () const
 
std::vector< uint64_t > * GetPrimaryPlaneModifiersForFormat (uint32_t format)
 
std::vector< uint64_t > * GetOverlayPlaneModifiersForFormat (uint32_t format)
 
struct crtcGetCrtc () const
 
virtual RESOLUTION_INFO GetCurrentMode ()
 
virtual std::vector< RESOLUTION_INFOGetModes ()
 
virtual bool SetMode (const RESOLUTION_INFO &res)
 
bool SupportsProperty (struct drm_object *object, const char *name)
 
virtual bool AddProperty (struct drm_object *object, const char *name, uint64_t value)
 
virtual bool SetProperty (struct drm_object *object, const char *name, uint64_t value)
 

Static Public Member Functions

static uint32_t FourCCWithAlpha (uint32_t fourcc)
 
static uint32_t FourCCWithoutAlpha (uint32_t fourcc)
 

Protected Member Functions

bool OpenDrm (bool needConnector)
 
uint32_t GetPropertyId (struct drm_object *object, const char *name)
 
drm_fbDrmFbGetFromBo (struct gbm_bo *bo)
 

Static Protected Member Functions

static bool GetProperties (int fd, uint32_t id, uint32_t type, struct drm_object *object)
 
static void FreeProperties (struct drm_object *object)
 

Protected Attributes

int m_fd
 
struct connectorm_connector = nullptr
 
struct encoderm_encoder = nullptr
 
struct crtcm_crtc = nullptr
 
struct planem_primary_plane = nullptr
 
struct planem_overlay_plane = nullptr
 
drmModeModeInfo * m_mode = nullptr
 
int m_width = 0
 
int m_height = 0
 

Constructor & Destructor Documentation

§ CDRMUtils()

CDRMUtils::CDRMUtils ( )

§ ~CDRMUtils()

virtual CDRMUtils::~CDRMUtils ( )
virtualdefault

Member Function Documentation

§ AddProperty()

virtual bool CDRMUtils::AddProperty ( struct drm_object object,
const char *  name,
uint64_t  value 
)
inlinevirtual

Reimplemented in CDRMAtomic.

§ DestroyDrm()

void CDRMUtils::DestroyDrm ( )
virtual

Reimplemented in CDRMAtomic, and COffScreenModeSetting.

§ DrmFbGetFromBo()

drm_fb * CDRMUtils::DrmFbGetFromBo ( struct gbm_bo *  bo)
protected

§ FlipPage()

virtual void CDRMUtils::FlipPage ( struct gbm_bo *  bo,
bool  rendered,
bool  videoLayer 
)
inlinevirtual

Reimplemented in CDRMAtomic, CDRMLegacy, and COffScreenModeSetting.

§ FourCCWithAlpha()

uint32_t CDRMUtils::FourCCWithAlpha ( uint32_t  fourcc)
static

§ FourCCWithoutAlpha()

uint32_t CDRMUtils::FourCCWithoutAlpha ( uint32_t  fourcc)
static

§ FreeProperties()

void CDRMUtils::FreeProperties ( struct drm_object object)
staticprotected

§ GetCrtc()

struct crtc* CDRMUtils::GetCrtc ( ) const
inline

§ GetCurrentMode()

RESOLUTION_INFO CDRMUtils::GetCurrentMode ( )
virtual

Reimplemented in COffScreenModeSetting.

§ GetDevicePath()

std::string CDRMUtils::GetDevicePath ( ) const
inline

§ GetFileDescriptor()

int CDRMUtils::GetFileDescriptor ( ) const
inline

§ GetModes()

std::vector< RESOLUTION_INFO > CDRMUtils::GetModes ( )
virtual

Reimplemented in COffScreenModeSetting.

§ GetModule()

std::string CDRMUtils::GetModule ( ) const
inline

§ GetOverlayPlane()

struct plane* CDRMUtils::GetOverlayPlane ( ) const
inline

§ GetOverlayPlaneModifiersForFormat()

std::vector<uint64_t>* CDRMUtils::GetOverlayPlaneModifiersForFormat ( uint32_t  format)
inline

§ GetPrimaryPlane()

struct plane* CDRMUtils::GetPrimaryPlane ( ) const
inline

§ GetPrimaryPlaneModifiersForFormat()

std::vector<uint64_t>* CDRMUtils::GetPrimaryPlaneModifiersForFormat ( uint32_t  format)
inline

§ GetProperties()

bool CDRMUtils::GetProperties ( int  fd,
uint32_t  id,
uint32_t  type,
struct drm_object object 
)
staticprotected

§ GetPropertyId()

uint32_t CDRMUtils::GetPropertyId ( struct drm_object object,
const char *  name 
)
protected

§ InitDrm()

bool CDRMUtils::InitDrm ( )
virtual

Reimplemented in CDRMAtomic, CDRMLegacy, and COffScreenModeSetting.

§ OpenDrm()

bool CDRMUtils::OpenDrm ( bool  needConnector)
protected

§ SetActive()

virtual bool CDRMUtils::SetActive ( bool  active)
inlinevirtual

Reimplemented in CDRMAtomic, CDRMLegacy, and COffScreenModeSetting.

§ SetMode()

bool CDRMUtils::SetMode ( const RESOLUTION_INFO res)
virtual

Reimplemented in COffScreenModeSetting.

§ SetProperty()

virtual bool CDRMUtils::SetProperty ( struct drm_object object,
const char *  name,
uint64_t  value 
)
inlinevirtual

Reimplemented in CDRMLegacy.

§ SetVideoMode()

virtual bool CDRMUtils::SetVideoMode ( const RESOLUTION_INFO res,
struct gbm_bo *  bo 
)
inlinevirtual

Reimplemented in CDRMAtomic, CDRMLegacy, and COffScreenModeSetting.

§ SupportsProperty()

bool CDRMUtils::SupportsProperty ( struct drm_object object,
const char *  name 
)

Member Data Documentation

§ m_connector

struct connector* CDRMUtils::m_connector = nullptr
protected

§ m_crtc

struct crtc* CDRMUtils::m_crtc = nullptr
protected

§ m_encoder

struct encoder* CDRMUtils::m_encoder = nullptr
protected

§ m_fd

int CDRMUtils::m_fd
protected

§ m_height

int CDRMUtils::m_height = 0
protected

§ m_mode

drmModeModeInfo* CDRMUtils::m_mode = nullptr
protected

§ m_overlay_plane

struct plane* CDRMUtils::m_overlay_plane = nullptr
protected

§ m_primary_plane

struct plane* CDRMUtils::m_primary_plane = nullptr
protected

§ m_width

int CDRMUtils::m_width = 0
protected

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