![]() |
Open CASCADE Technology Reference Manual 8.0.0
|
Texture adapter for Media_Frame. More...
#include <Graphic3d_MediaTextureSet.hxx>

Public Types | |
| typedef void(* | CallbackOnUpdate_t) (void *theUserPtr) |
| Callback definition. | |
Public Types inherited from Standard_Transient | |
| typedef void | base_type |
| Returns a type descriptor about this object. | |
Public Member Functions | |
| Graphic3d_MediaTextureSet () | |
| Empty constructor. | |
| void | SetCallback (CallbackOnUpdate_t theCallbackFunction, void *theCallbackUserPtr) |
| Setup callback to be called on queue progress (e.g. when new frame should be displayed). | |
| void | Notify () |
| Call callback. | |
| const TCollection_AsciiString & | Input () const |
| Return input media. | |
| void | OpenInput (const TCollection_AsciiString &thePath, bool theToWait) |
| Open specified file. Passing an empty path would close current input. | |
| const occ::handle< Media_PlayerContext > & | PlayerContext () const |
| Return player context; it can be NULL until first OpenInput(). | |
| bool | SwapFrames () |
| Swap front/back frames. | |
| NCollection_Vec2< int > | FrameSize () const |
| Return front frame dimensions. | |
| occ::handle< Graphic3d_ShaderProgram > | ShaderProgram () const |
| Return shader program for displaying texture set. | |
| bool | IsPlanarYUV () const |
| Return TRUE if texture set defined 3 YUV planes. | |
| bool | IsFullRangeYUV () const |
| Return TRUE if YUV range is full. | |
| double | Duration () const |
| Return duration in seconds. | |
| double | Progress () const |
| Return playback progress in seconds. | |
Public Member Functions inherited from Graphic3d_TextureSet | |
| Graphic3d_TextureSet ()=default | |
| Empty constructor. | |
| Graphic3d_TextureSet (int theNbTextures) | |
| Constructor. | |
| Graphic3d_TextureSet (const occ::handle< Graphic3d_TextureMap > &theTexture) | |
| Constructor for a single texture. | |
| bool | IsEmpty () const |
| Return TRUE if texture array is empty. | |
| int | Size () const |
| Return number of textures. | |
| int | Lower () const |
| Return the lower index in texture set. | |
| int | Upper () const |
| Return the upper index in texture set. | |
| const occ::handle< Graphic3d_TextureMap > & | First () const |
| Return the first texture. | |
| void | SetFirst (const occ::handle< Graphic3d_TextureMap > &theTexture) |
| Return the first texture. | |
| const occ::handle< Graphic3d_TextureMap > & | Value (int theIndex) const |
| Return the texture at specified position within [0, Size()) range. | |
| void | SetValue (int theIndex, const occ::handle< Graphic3d_TextureMap > &theTexture) |
| Return the texture at specified position within [0, Size()) range. | |
Public Member Functions inherited from Standard_Transient | |
| Standard_Transient () | |
| Empty constructor. | |
| Standard_Transient (const Standard_Transient &) | |
| Copy constructor – does nothing. | |
| Standard_Transient & | operator= (const Standard_Transient &) |
| Assignment operator, needed to avoid copying reference counter. | |
| virtual | ~Standard_Transient ()=default |
| Destructor must be virtual. | |
| virtual const opencascade::handle< Standard_Type > & | DynamicType () const |
| Returns a type descriptor about this object. | |
| bool | IsInstance (const opencascade::handle< Standard_Type > &theType) const |
| Returns a true value if this is an instance of Type. | |
| bool | IsInstance (const char *const theTypeName) const |
| Returns a true value if this is an instance of TypeName. | |
| bool | 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. | |
| bool | IsKind (const char *const 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. | |
| Standard_Transient * | This () 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. | |
| int | GetRefCount () const noexcept |
| Get the reference counter of this object. | |
| void | IncrementRefCounter () noexcept |
| Increments the reference counter of this object. Uses relaxed memory ordering since incrementing only requires atomicity, not synchronization with other memory operations. | |
| int | DecrementRefCounter () noexcept |
| Decrements the reference counter of this object; returns the decremented value. Uses release ordering for the decrement to ensure all writes to the object are visible before the count reaches zero. An acquire fence is added only when the count reaches zero, ensuring proper synchronization before deletion. This is more efficient than using acq_rel for every decrement. | |
| virtual void | Delete () const |
| Memory deallocator for transient classes. | |
Media_IFrameQueue interface | |
| occ::handle< Media_PlayerContext > | myPlayerCtx |
| player context | |
| occ::handle< Media_Frame > | myFramePair [2] |
| front/back frames pair | |
| occ::handle< Graphic3d_ShaderProgram > | myShaderYUV |
| shader program for YUV texture set | |
| occ::handle< Graphic3d_ShaderProgram > | myShaderYUVJ |
| shader program for YUVJ texture set | |
| std::mutex | myMutex |
| mutex for accessing frames | |
| TCollection_AsciiString | myInput |
| input media | |
| CallbackOnUpdate_t | myCallbackFunction |
| callback function | |
| void * | myCallbackUserPtr |
| callback data | |
| NCollection_Vec2< int > | myFrameSize |
| front frame size | |
| double | myProgress |
| playback progress in seconds | |
| double | myDuration |
| stream duration | |
| int | myFront |
| index of front texture | |
| bool | myToPresentFrame |
| flag | |
| bool | myIsPlanarYUV |
| front frame contains planar YUV data or native texture format | |
| bool | myIsFullRangeYUV |
| front frame defines full-range or reduced-range YUV | |
Additional Inherited Members | |
Static Public Member Functions inherited from Standard_Transient | |
| static constexpr const char * | get_type_name () |
| Returns a type descriptor about this object. | |
| static const opencascade::handle< Standard_Type > & | get_type_descriptor () |
| Returns type descriptor of Standard_Transient class. | |
Protected Attributes inherited from Graphic3d_TextureSet | |
| NCollection_Array1< occ::handle< Graphic3d_TextureMap > > | myTextures |
Texture adapter for Media_Frame.
| typedef void(* Graphic3d_MediaTextureSet::CallbackOnUpdate_t) (void *theUserPtr) |
Callback definition.
| Graphic3d_MediaTextureSet::Graphic3d_MediaTextureSet | ( | ) |
Empty constructor.
|
inline |
Return duration in seconds.
|
inline |
Return front frame dimensions.
|
inline |
Return input media.
|
inline |
Return TRUE if YUV range is full.
|
inline |
Return TRUE if texture set defined 3 YUV planes.
| void Graphic3d_MediaTextureSet::Notify | ( | ) |
Call callback.
| void Graphic3d_MediaTextureSet::OpenInput | ( | const TCollection_AsciiString & | thePath, |
| bool | theToWait ) |
Open specified file. Passing an empty path would close current input.
|
inline |
Return player context; it can be NULL until first OpenInput().
|
inline |
Return playback progress in seconds.
| 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).
|
inline |
Return shader program for displaying texture set.
| bool Graphic3d_MediaTextureSet::SwapFrames | ( | ) |
Swap front/back frames.
|
protected |
callback function
|
protected |
callback data
|
protected |
stream duration
|
protected |
front/back frames pair
|
protected |
front frame size
|
protected |
index of front texture
|
protected |
input media
|
protected |
front frame defines full-range or reduced-range YUV
|
protected |
front frame contains planar YUV data or native texture format
|
protected |
mutex for accessing frames
|
protected |
player context
|
protected |
playback progress in seconds
|
protected |
shader program for YUV texture set
|
protected |
shader program for YUVJ texture set
|
protected |
flag