summaryrefslogtreecommitdiffstats
path: root/make/stub_includes/openmax/NVOMX_ComponentBase.h
diff options
context:
space:
mode:
Diffstat (limited to 'make/stub_includes/openmax/NVOMX_ComponentBase.h')
-rw-r--r--make/stub_includes/openmax/NVOMX_ComponentBase.h342
1 files changed, 0 insertions, 342 deletions
diff --git a/make/stub_includes/openmax/NVOMX_ComponentBase.h b/make/stub_includes/openmax/NVOMX_ComponentBase.h
deleted file mode 100644
index 00d1d1217..000000000
--- a/make/stub_includes/openmax/NVOMX_ComponentBase.h
+++ /dev/null
@@ -1,342 +0,0 @@
-/* Copyright (c) 2007 NVIDIA Corporation. All rights reserved.
- *
- * NVIDIA Corporation and its licensors retain all intellectual property
- * and proprietary rights in and to this software, related documentation
- * and any modifications thereto. Any use, reproduction, disclosure or
- * distribution of this software and related documentation without an
- * express license agreement from NVIDIA Corporation is strictly prohibited.
- */
-
-/**
- * @defgroup nv_omx_il_comp_base NVIDIA OMX Component Base Interface
- *
- * This is the NVIDIA OMX component base interface. See also \link samp_impl Sample
- * Implementations\endlink in this document.
- *
- * @ingroup nv_omx_il_core
- * @{
- */
-
-#ifndef _NVOMX_ComponentBase_h_
-#define _NVOMX_ComponentBase_h_
-
-#include <OMX_Core.h>
-#include <OMX_Component.h>
-
-#define NVOMX_COMPONENT_MAX_PORTS 8 /** Max number of ports NVOMX_Component may have. */
-
-/**
- Defines a simple port abstraction used in NVOMX_Component.
- */
-typedef struct NVOMX_Port
-{
- OMX_PARAM_PORTDEFINITIONTYPE *pPortDef; /**< Holds a pointer to the OMX port definition
- for this port */
- OMX_AUDIO_PARAM_PCMMODETYPE *pPCMMode; /**< Holds a pointer to the PCM description of this component, if pertinent. */
- OMX_BUFFERHEADERTYPE *pCurrentBufferHdr; /**< Holds a pointer to the current
- buffer on this port, if any. */
-} NVOMX_Port;
-
-/**
- Defines a simple OMX component template that abstracts most of the
- complexity away from the user.
-
- To use:
- -# Call NVOMX_CreateComponent() from the OMX component's init functions to create this
- structure.
- -# Call NVOMX_AddRole() to set what OMX roles this component will fill.
- -# Call NVOMX_InitPort() once for each port on this component to setup the ports.
- -# Fill in the function pointers in the NVOMX_Component structure as
- appropriate -- at a minimum _NVOMX_Component::WorkerFunction and
- _NVOMX_Component::DeInit must point to valid functions.
- */
-typedef struct _NVOMX_Component NVOMX_Component;
-/**
- Defines a simple OMX component.
- */
-struct _NVOMX_Component
-{
- OMX_PTR pBase; /**< Internal pointer, do not touch. */
-
- OMX_U32 nPorts; /**< Holds the number of valid ports for this component. */
- NVOMX_Port pPorts[NVOMX_COMPONENT_MAX_PORTS]; /**< Holds an array of port structures
- for this component. */
-
- OMX_PTR pComponentData; /**< An opaque pointer to any data this component desires
- to keep track of. */
-
- /**
- Frees any remaining memory/resources
- allocated by the component.
-
- @param [in] pComp
- A pointer to the NVOMX_Component structure.
- @retval OMX_ERRORTYPE
- This generally should not have an error, but should return as appropriate.
- */
- OMX_ERRORTYPE (*DeInit)(NVOMX_Component *pComp);
-
- /**
- Called whenever an OMX_GetParameter has been done on the
- component.
-
- @param [in] pComp
- A pointer to the NVOMX_Component structure.
- @param [in] nIndex
- Specifies what type of configuration this is.
- @param [inout] pComponentParameterStructure
- Any data associated with this parameter call.
- @param [out] bHandled
- OMX_TRUE if this call was processed, otherwise OMX_FALSE.
- @retval OMX_ERRORTYPE
- Returns an appropriate error.
- */
- OMX_ERRORTYPE (*GetParameter)(NVOMX_Component *pComp,
- OMX_INDEXTYPE nParamIndex,
- OMX_PTR pComponentParameterStructure,
- OMX_BOOL *bHandled);
-
- /**
- Called whenever an OMX_SetParameter has been done on the
- component.
-
- @param [in] pComp
- A pointer to the NVOMX_Component structure.
- @param [in] nIndex
- Specifies what type of configuration this is.
- @param [in] pComponentParameterStructure
- Any data associated with this parameter call.
- @param [out] bHandled
- OMX_TRUE if this call was processed, otherwise OMX_FALSE.
- @retval OMX_ERRORTYPE
- Returns an appropriate error.
- */
- OMX_ERRORTYPE (*SetParameter)(NVOMX_Component *pComp,
- OMX_INDEXTYPE nIndex,
- OMX_PTR pComponentParameterStructure,
- OMX_BOOL *bHandled);
-
- /**
- Called whenever an OMX_GetConfig has been done on the component.
-
- @param [in] pComp
- A pointer to the NVOMX_Component structure.
- @param [in] nIndex
- Specifies what type of configuration this is.
- @param [inout] pComponentConfigStructure
- Any data associated with this config call.
- @param [out] bHandled
- OMX_TRUE if this call was processed, otherwise OMX_FALSE.
- @retval OMX_ERRORTYPE
- Returns an appropriate error.
- */
- OMX_ERRORTYPE (*GetConfig)(NVOMX_Component *pComp,
- OMX_INDEXTYPE nIndex,
- OMX_PTR pComponentConfigStructure,
- OMX_BOOL *bHandled);
-
- /**
- Called whenever an OMX_SetConfig has been done on the component.
-
- @param [in] pComp
- A pointer to the NVOMX_Component structure.
- @param [in] nIndex
- Specifies what type of configuration this is.
- @param [in] pComponentConfigStructure
- Any data associated with this config call.
- @param [out] bHandled
- OMX_TRUE if this call was processed, otherwise OMX_FALSE.
- @retval OMX_ERRORTYPE
- Returns an appropriate error.
- */
- OMX_ERRORTYPE (*SetConfig)(NVOMX_Component *pComp,
- OMX_INDEXTYPE nIndex,
- OMX_PTR pComponentConfigStructure,
- OMX_BOOL *bHandled);
-
- /**
- Called whenever all ports of this component have a
- valid buffer and there needs to be work done to process them.
-
- @param [in] pComp
- A pointer to the NVOMX_Component structure.
- @param [out] pbMoreWork
- OMX_TRUE if there is still more work to be done on a given
- input buffer.
- @retval OMX_ERRORTYPE
- This generally should not fail, but returns an appropriate error type.
- */
- OMX_ERRORTYPE (*WorkerFunction)(NVOMX_Component *pComp,
- OMX_BOOL *pbMoreWork);
-
- /**
- Called on the transition to OMX_StateIdle (from Loaded).
- Allocates/acquires any resources in this function.
-
- @param [in] pComp
- A pointer to the NVOMX_Component structure.
- @retval OMX_ERRORTYPE
- This generally should not fail, but returns an appropriate error type.
- @retval OMX_ErrorNotReady
- If OMX_ErrorNotReady is returned, the component core will retry the
- transtion periodically until it succeeds. If any other error than
- OMX_ErrorNone is returned, the error will be sent back to the component.
- */
- OMX_ERRORTYPE (*AcquireResources)(NVOMX_Component *pComp);
-
- /**
- Called when this component needs to release its hold
- on any resources acquired by _NVOMX_Component::AcquireResources.
-
- @param [in] pComp
- A pointer to the NVOMX_Component structure.
- @retval OMX_ERRORTYPE
- This generally should not fail, but returns an appropriate error type.
- */
- OMX_ERRORTYPE (*ReleaseResources)(NVOMX_Component *pComp);
-
-};
-
-/**
- Creates an NVOMX_Component.
-
- @param [in] hComponent
- A pointer to the OMX handle passed into the component's init function.
- @param [in] nPorts
- Specifies how many ports this component will have.
- @param [in] name
- The name of this component, must be unique
- @param [out] ppComp
- A pointer to the created NVOMX_Component; use this for calling any other
- NVOMX_Component functions.
- @retval OMX_ERRORTYPE
- Returns an appropriate error.
- */
-OMX_API OMX_ERRORTYPE OMX_APIENTRY NVOMX_CreateComponent(
- OMX_HANDLETYPE hComponent,
- OMX_U32 nPorts,
- OMX_STRING name,
- NVOMX_Component **ppComp);
-
-/**
- Adds a role name to this component.
-
- @param [in] pComp
- A pointer to the NVOMX_Component structure.
- @param [in] roleName
- A pointer to a static char string with the role name.
- @retval OMX_ERRORTYPE
- Returns an appropriate error.
- */
-OMX_API OMX_ERRORTYPE OMX_APIENTRY NVOMX_AddRole(
- NVOMX_Component *pComp,
- OMX_STRING roleName);
-
-/**
- Registers an index extension with this component.
-
- @param [in] pComp
- A pointer to the NVOMX_Component structure.
- @param [in] indexName
- A pointer to a static char string with the role name.
- @param [in] indexType
- The index to register
- @retval OMX_ERRORTYPE
- Returns an appropriate error.
- */
-OMX_API OMX_ERRORTYPE OMX_APIENTRY NVOMX_AddExtensionIndex(
- NVOMX_Component *pComp,
- OMX_STRING indexName,
- OMX_INDEXTYPE indexType);
-
-/**
- Creates a port structure.
-
- @param [in] pComp
- A pointer to the NVOMX_Component structure.
- @param [in] nPort
- Specifies the port number to create.
- @param [in] eDir
- Specifies the direction (input/output) of the port.
- @param [in] nBufferCount
- Specifies the minimum number of buffers to create on this port.
- @param [in] nBufferSize
- Specifies the minimum buffer size to create.
- @param [in] eDomain
- Specifies what port type (other, image, video, audio) this port will be.
- @param [in] pFormat
- A pointer to the format type of the port. May be one of type
- OMX_OTHER_FORMATTYPE, OMX_AUDIO_CODINGTYPE, OMX_VIDEO_CODINGTYPE, or
- OMX_IMAGE_CODINGTYPE.
- @retval OMX_ERRORTYPE
- Returns an appropriate error.
- */
-OMX_API OMX_ERRORTYPE OMX_APIENTRY NVOMX_InitPort(
- NVOMX_Component *pComp,
- OMX_U32 nPort,
- OMX_DIRTYPE eDir,
- OMX_U32 nBufferCount,
- OMX_U32 nBufferSize,
- OMX_PORTDOMAINTYPE eDomain,
- OMX_PTR pFormat);
-
-/**
- Copies any buffer metadata (flags, marks, etc.) from one port to another.
-
- @param [in] pComp
- A pointer to the NVOMX_Component structure.
- @param [in] nSourcePort
- Specifies the source port from which to copy metadata.
- @param [in] nDestPort
- Specifies the port to which to copy metadata.
- @retval OMX_ERRORTYPE
- Returns an appropriate error.
- */
-OMX_API OMX_ERRORTYPE OMX_APIENTRY NVOMX_CopyBufferMetadata(
- NVOMX_Component *pComp,
- OMX_U32 nSourcePort,
- OMX_U32 nDestPort);
-
-/**
- Gets an empty buffer to an input port.
- The buffer will be queued for delivery either to the tunneled component
- associated with the given port, or back to the IL client via the
- EmptyBufferDone callback.
-
- @param [in] pComp
- A pointer to the NVOMX_Component structure.
- @param [in] nPort
- Specifies the input port in which to return the buffer.
- @param [in] pBuffer
- Specifies the buffer to return to the input port.
- @retval OMX_ERRORTYPE
- Returns an appropriate error.
- */
-OMX_API OMX_ERRORTYPE OMX_APIENTRY NVOMX_ReleaseEmptyBuffer(
- NVOMX_Component *pComp,
- OMX_U32 nPort,
- OMX_BUFFERHEADERTYPE *pBuffer);
-
-/**
- Delivers a full buffer to an output port.
- The buffer will be queued for delivery either to the tunneled component
- associated with the given port, or back to the IL client via the
- FillBufferDone callback.
-
- @param [in] pComp
- A pointer to the NVOMX_Component structure.
- @param [in] nPort
- Specifies the output port in which to deliver the buffer.
- @param [in] pBuffer
- Specifies the buffer to deliver to the output port.
- @retval OMX_ERRORTYPE
- Returns an appropriate error.
- */
-OMX_API OMX_ERRORTYPE OMX_APIENTRY NVOMX_DeliverFullBuffer(
- NVOMX_Component *pComp,
- OMX_U32 nPort,
- OMX_BUFFERHEADERTYPE *pBuffer);
-
-#endif
-/** @} */
-