X-Git-Url: https://git.ao2.it/libam7xxx.git/blobdiff_plain/d9b0524a108bb57ecc5e05fde9077c5cc5c3c077..d2b3bd440d4700abf2e6b503d3a864af1496026e:/src/am7xxx.h diff --git a/src/am7xxx.h b/src/am7xxx.h index 5367145..13cb83d 100644 --- a/src/am7xxx.h +++ b/src/am7xxx.h @@ -23,10 +23,23 @@ extern "C" { #endif + +struct _am7xxx_context; +typedef struct _am7xxx_context am7xxx_context; + struct _am7xxx_device; typedef struct _am7xxx_device am7xxx_device; typedef enum { + AM7XXX_LOG_FATAL = 0, + AM7XXX_LOG_ERROR = 1, + AM7XXX_LOG_WARNING = 2, + AM7XXX_LOG_INFO = 3, + AM7XXX_LOG_DEBUG = 4, + AM7XXX_LOG_TRACE = 5, +} am7xxx_log_level; + +typedef enum { AM7XXX_IMAGE_FORMAT_JPEG = 1, AM7XXX_IMAGE_FORMAT_NV12 = 2, } am7xxx_image_format; @@ -39,9 +52,17 @@ typedef enum { AM7XXX_POWER_TURBO = 4, } am7xxx_power_mode; -am7xxx_device *am7xxx_init(void); +int am7xxx_init(am7xxx_context **ctx); + +void am7xxx_shutdown(am7xxx_context *ctx); + +void am7xxx_set_log_level(am7xxx_context *ctx, am7xxx_log_level log_level); + +int am7xxx_open_device(am7xxx_context *ctx, + am7xxx_device **dev, + unsigned int device_index); -void am7xxx_shutdown(am7xxx_device *dev); +int am7xxx_close_device(am7xxx_device *dev); int am7xxx_get_device_info(am7xxx_device *dev, unsigned int *native_width,