OMX_CoreExt.h 2.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. /*
  2. * Copyright (c) 2016 The Khronos Group Inc.
  3. *
  4. * Permission is hereby granted, free of charge, to any person obtaining
  5. * a copy of this software and associated documentation files (the
  6. * "Software"), to deal in the Software without restriction, including
  7. * without limitation the rights to use, copy, modify, merge, publish,
  8. * distribute, sublicense, and/or sell copies of the Software, and to
  9. * permit persons to whom the Software is furnished to do so, subject
  10. * to the following conditions:
  11. * The above copyright notice and this permission notice shall be included
  12. * in all copies or substantial portions of the Software.
  13. *
  14. * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
  15. * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
  16. * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
  17. * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
  18. * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
  19. * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
  20. * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
  21. *
  22. */
  23. /** OMX_CoreExt.h - OpenMax IL version 1.1.2
  24. * The OMX_CoreExt header file contains extensions to the definitions used
  25. * by both the application and the component to access common items.
  26. */
  27. #ifndef OMX_CoreExt_h
  28. #define OMX_CoreExt_h
  29. #ifdef __cplusplus
  30. extern "C" {
  31. #endif /* __cplusplus */
  32. /* Each OMX header shall include all required header files to allow the
  33. * header to compile without errors. The includes below are required
  34. * for this header file to compile successfully
  35. */
  36. #include <OMX_Core.h>
  37. /** Extensions to the standard IL errors. */
  38. typedef enum OMX_ERROREXTTYPE
  39. {
  40. OMX_ErrorInvalidMode = (OMX_S32) (OMX_ErrorKhronosExtensions + 0x00000001),
  41. OMX_ErrorExtMax = 0x7FFFFFFF
  42. } OMX_ERROREXTTYPE;
  43. /** Event type extensions. */
  44. typedef enum OMX_EVENTEXTTYPE
  45. {
  46. OMX_EventIndexSettingChanged = OMX_EventKhronosExtensions, /**< component signals the IL client of a change
  47. in a param, config, or extension */
  48. OMX_EventExtMax = 0x7FFFFFFF
  49. } OMX_EVENTEXTTYPE;
  50. /** Enable or disable a callback event. */
  51. typedef struct OMX_CONFIG_CALLBACKREQUESTTYPE {
  52. OMX_U32 nSize; /**< size of the structure in bytes */
  53. OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
  54. OMX_U32 nPortIndex; /**< port that this structure applies to */
  55. OMX_INDEXTYPE nIndex; /**< the index the callback is requested for */
  56. OMX_BOOL bEnable; /**< enable (OMX_TRUE) or disable (OMX_FALSE) the callback */
  57. } OMX_CONFIG_CALLBACKREQUESTTYPE;
  58. #ifdef __cplusplus
  59. }
  60. #endif /* __cplusplus */
  61. #endif /* OMX_CoreExt_h */
  62. /* File EOF */