csi_meta.h 996 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. /*
  2. * Copyright (C) 2021 Alibaba Group Holding Limited
  3. * Author: LuChongzhi <chongzhi.lcz@alibaba-inc.com>
  4. *
  5. * This program is free software; you can redistribute it and/or modify
  6. * it under the terms of the GNU General Public License version 2 as
  7. * published by the Free Software Foundation.
  8. */
  9. #ifndef __CSI_META_H__
  10. #define __CSI_META_H__
  11. #include <stddef.h>
  12. #include <stdint.h>
  13. #include <unistd.h>
  14. #include <sys/types.h>
  15. #ifdef __cplusplus
  16. extern "C" {
  17. #endif
  18. typedef enum csi_meta_type {
  19. CSI_META_TYPE_SYSTEM,
  20. CSI_META_TYPE_CAMERA,
  21. CSI_META_TYPE_VDEC,
  22. CSI_META_TYPE_GPU,
  23. CSI_META_TYPE_G2D,
  24. } csi_meta_type_e;
  25. typedef enum csi_meta_value_type {
  26. CSI_META_VALUE_TYPE_BOOL,
  27. CSI_META_VALUE_TYPE_INT,
  28. CSI_META_VALUE_TYPE_UINT,
  29. CSI_META_VALUE_TYPE_STR,
  30. CSI_META_VALUE_TYPE_TIMEVAL,
  31. } csi_meta_value_type_e;
  32. typedef struct csi_meta {
  33. csi_meta_type_e type;
  34. size_t size;
  35. void *data;
  36. } csi_meta_s;
  37. #ifdef __cplusplus
  38. }
  39. #endif
  40. #endif /* __CSI_META_H__ */