Open CASCADE Technology  7.4.0
Public Types | Public Member Functions
Graphic3d_MediaTextureSet Class Reference

Texture adapter for Media_Frame. More...

#include <Graphic3d_MediaTextureSet.hxx>

Inheritance diagram for Graphic3d_MediaTextureSet:
Inheritance graph
[legend]

Public Types

typedef void(* CallbackOnUpdate_t) (void *theUserPtr)
 Callback definition. More...
 
- Public Types inherited from Standard_Transient
typedef void base_type
 Returns a type descriptor about this object. More...
 

Public Member Functions

 Graphic3d_MediaTextureSet ()
 Empty constructor. More...
 
void SetCallback (CallbackOnUpdate_t theCallbackFunction, void *theCallbackUserPtr)
 Setup callback to be called on queue progress (e.g. when new frame should be displayed). More...
 
void Notify ()
 Call callback. More...
 
const TCollection_AsciiStringInput () const
 Return input media. More...
 
void OpenInput (const TCollection_AsciiString &thePath, Standard_Boolean theToWait)
 Open specified file. Passing an empty path would close current input. More...
 
const Handle< Media_PlayerContext > & PlayerContext () const
 Return player context; it can be NULL until first OpenInput(). More...
 
Standard_Boolean SwapFrames ()
 Swap front/back frames. More...
 
Graphic3d_Vec2i FrameSize () const
 Return front frame dimensions. More...
 
Handle< Graphic3d_ShaderProgramShaderProgram () const
 Return shader program for displaying texture set. More...
 
Standard_Boolean IsPlanarYUV () const
 Return TRUE if texture set defined 3 YUV planes. More...
 
Standard_Boolean IsFullRangeYUV () const
 Return TRUE if YUV range is full. More...
 
double Duration () const
 Return duration in seconds. More...
 
double Progress () const
 Return playback progress in seconds. More...
 
- Public Member Functions inherited from Graphic3d_TextureSet
 Graphic3d_TextureSet ()
 Empty constructor. More...
 
 Graphic3d_TextureSet (Standard_Integer theNbTextures)
 Constructor. More...
 
 Graphic3d_TextureSet (const Handle< Graphic3d_TextureMap > &theTexture)
 Constructor for a single texture. More...
 
Standard_Boolean IsEmpty () const
 Return TRUE if texture array is empty. More...
 
Standard_Integer Size () const
 Return number of textures. More...
 
Standard_Integer Lower () const
 Return the lower index in texture set. More...
 
Standard_Integer Upper () const
 Return the upper index in texture set. More...
 
const Handle< Graphic3d_TextureMap > & First () const
 Return the first texture. More...
 
void SetFirst (const Handle< Graphic3d_TextureMap > &theTexture)
 Return the first texture. More...
 
const Handle< Graphic3d_TextureMap > & Value (Standard_Integer theIndex) const
 Return the texture at specified position within [0, Size()) range. More...
 
void SetValue (Standard_Integer theIndex, const Handle< Graphic3d_TextureMap > &theTexture)
 Return the texture at specified position within [0, Size()) range. More...
 
- Public Member Functions inherited from Standard_Transient
 Standard_Transient ()
 Empty constructor. More...
 
 Standard_Transient (const Standard_Transient &)
 Copy constructor – does nothing. More...
 
Standard_Transientoperator= (const Standard_Transient &)
 Assignment operator, needed to avoid copying reference counter. More...
 
virtual ~Standard_Transient ()
 Destructor must be virtual. More...
 
virtual void Delete () const
 Memory deallocator for transient classes. More...
 
virtual const opencascade::handle< Standard_Type > & DynamicType () const
 Returns a type descriptor about this object. More...
 
Standard_Boolean IsInstance (const opencascade::handle< Standard_Type > &theType) const
 Returns a true value if this is an instance of Type. More...
 
Standard_Boolean IsInstance (const Standard_CString theTypeName) const
 Returns a true value if this is an instance of TypeName. More...
 
Standard_Boolean IsKind (const opencascade::handle< Standard_Type > &theType) const
 Returns true if this is an instance of Type or an instance of any class that inherits from Type. Note that multiple inheritance is not supported by OCCT RTTI mechanism. More...
 
Standard_Boolean IsKind (const Standard_CString theTypeName) const
 Returns true if this is an instance of TypeName or an instance of any class that inherits from TypeName. Note that multiple inheritance is not supported by OCCT RTTI mechanism. More...
 
Standard_TransientThis () const
 Returns non-const pointer to this object (like const_cast). For protection against creating handle to objects allocated in stack or call from constructor, it will raise exception Standard_ProgramError if reference counter is zero. More...
 
Standard_Integer GetRefCount () const
 Get the reference counter of this object. More...
 
void IncrementRefCounter () const
 Increments the reference counter of this object. More...
 
Standard_Integer DecrementRefCounter () const
 Decrements the reference counter of this object; returns the decremented value. More...
 

Media_IFrameQueue interface

Handle< Media_PlayerContextmyPlayerCtx
 player context More...
 
Handle< Media_FramemyFramePair [2]
 front/back frames pair More...
 
Handle< Graphic3d_ShaderProgrammyShaderYUV
 shader program for YUV texture set More...
 
Handle< Graphic3d_ShaderProgrammyShaderYUVJ
 shader program for YUVJ texture set More...
 
Handle< Media_HMutexmyMutex
 mutex for accessing frames More...
 
TCollection_AsciiString myInput
 input media More...
 
CallbackOnUpdate_t myCallbackFunction
 callback function More...
 
void * myCallbackUserPtr
 callback data More...
 
Graphic3d_Vec2i myFrameSize
 front frame size More...
 
Standard_Real myProgress
 playback progress in seconds More...
 
Standard_Real myDuration
 stream duration More...
 
Standard_Integer myFront
 index of front texture More...
 
Standard_Boolean myToPresentFrame
 flag More...
 
Standard_Boolean myIsPlanarYUV
 front frame contains planar YUV data or native texture format More...
 
Standard_Boolean myIsFullRangeYUV
 front frame defines full-range or reduced-range YUV More...
 

Additional Inherited Members

- Static Public Member Functions inherited from Standard_Transient
static const char * get_type_name ()
 Returns a type descriptor about this object. More...
 
static const opencascade::handle< Standard_Type > & get_type_descriptor ()
 Returns type descriptor of Standard_Transient class. More...
 
- Protected Attributes inherited from Graphic3d_TextureSet
NCollection_Array1< Handle< Graphic3d_TextureMap > > myTextures
 

Detailed Description

Texture adapter for Media_Frame.

Member Typedef Documentation

◆ CallbackOnUpdate_t

typedef void(* Graphic3d_MediaTextureSet::CallbackOnUpdate_t) (void *theUserPtr)

Callback definition.

Constructor & Destructor Documentation

◆ Graphic3d_MediaTextureSet()

Graphic3d_MediaTextureSet::Graphic3d_MediaTextureSet ( )

Empty constructor.

Member Function Documentation

◆ Duration()

double Graphic3d_MediaTextureSet::Duration ( ) const
inline

Return duration in seconds.

◆ FrameSize()

Graphic3d_Vec2i Graphic3d_MediaTextureSet::FrameSize ( ) const
inline

Return front frame dimensions.

◆ Input()

const TCollection_AsciiString& Graphic3d_MediaTextureSet::Input ( ) const
inline

Return input media.

◆ IsFullRangeYUV()

Standard_Boolean Graphic3d_MediaTextureSet::IsFullRangeYUV ( ) const
inline

Return TRUE if YUV range is full.

◆ IsPlanarYUV()

Standard_Boolean Graphic3d_MediaTextureSet::IsPlanarYUV ( ) const
inline

Return TRUE if texture set defined 3 YUV planes.

◆ Notify()

void Graphic3d_MediaTextureSet::Notify ( )

Call callback.

◆ OpenInput()

void Graphic3d_MediaTextureSet::OpenInput ( const TCollection_AsciiString thePath,
Standard_Boolean  theToWait 
)

Open specified file. Passing an empty path would close current input.

◆ PlayerContext()

const Handle< Media_PlayerContext >& Graphic3d_MediaTextureSet::PlayerContext ( ) const
inline

Return player context; it can be NULL until first OpenInput().

◆ Progress()

double Graphic3d_MediaTextureSet::Progress ( ) const
inline

Return playback progress in seconds.

◆ SetCallback()

void Graphic3d_MediaTextureSet::SetCallback ( CallbackOnUpdate_t  theCallbackFunction,
void *  theCallbackUserPtr 
)

Setup callback to be called on queue progress (e.g. when new frame should be displayed).

◆ ShaderProgram()

Handle< Graphic3d_ShaderProgram > Graphic3d_MediaTextureSet::ShaderProgram ( ) const
inline

Return shader program for displaying texture set.

◆ SwapFrames()

Standard_Boolean Graphic3d_MediaTextureSet::SwapFrames ( )

Swap front/back frames.

Field Documentation

◆ myCallbackFunction

CallbackOnUpdate_t Graphic3d_MediaTextureSet::myCallbackFunction
protected

callback function

◆ myCallbackUserPtr

void* Graphic3d_MediaTextureSet::myCallbackUserPtr
protected

callback data

◆ myDuration

Standard_Real Graphic3d_MediaTextureSet::myDuration
protected

stream duration

◆ myFramePair

Handle< Media_Frame > Graphic3d_MediaTextureSet::myFramePair[2]
protected

front/back frames pair

◆ myFrameSize

Graphic3d_Vec2i Graphic3d_MediaTextureSet::myFrameSize
protected

front frame size

◆ myFront

Standard_Integer Graphic3d_MediaTextureSet::myFront
protected

index of front texture

◆ myInput

TCollection_AsciiString Graphic3d_MediaTextureSet::myInput
protected

input media

◆ myIsFullRangeYUV

Standard_Boolean Graphic3d_MediaTextureSet::myIsFullRangeYUV
protected

front frame defines full-range or reduced-range YUV

◆ myIsPlanarYUV

Standard_Boolean Graphic3d_MediaTextureSet::myIsPlanarYUV
protected

front frame contains planar YUV data or native texture format

◆ myMutex

Handle< Media_HMutex > Graphic3d_MediaTextureSet::myMutex
protected

mutex for accessing frames

◆ myPlayerCtx

Handle< Media_PlayerContext > Graphic3d_MediaTextureSet::myPlayerCtx
protected

player context

◆ myProgress

Standard_Real Graphic3d_MediaTextureSet::myProgress
protected

playback progress in seconds

◆ myShaderYUV

Handle< Graphic3d_ShaderProgram > Graphic3d_MediaTextureSet::myShaderYUV
protected

shader program for YUV texture set

◆ myShaderYUVJ

Handle< Graphic3d_ShaderProgram > Graphic3d_MediaTextureSet::myShaderYUVJ
protected

shader program for YUVJ texture set

◆ myToPresentFrame

Standard_Boolean Graphic3d_MediaTextureSet::myToPresentFrame
protected

flag


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