diff options
Diffstat (limited to 'src/uca.h')
-rw-r--r-- | src/uca.h | 37 |
1 files changed, 27 insertions, 10 deletions
@@ -29,7 +29,8 @@ typedef uint32_t (*uca_cam_destroy) (struct uca_t *uca); /** * \brief Set a property * \param[in] property_name Name of the property as defined in XXX - * \return UCA_ERR_PROP_INVALID if property is not supported on the camera + * \return UCA_ERR_PROP_INVALID if property is not supported on the camera or + * UCA_ERR_PROP_VALUE_OUT_OF_RANGE if value cannot be set. */ typedef uint32_t (*uca_cam_set_property) (struct uca_t *uca, int32_t property, void *data); @@ -40,6 +41,12 @@ typedef uint32_t (*uca_cam_set_property) (struct uca_t *uca, int32_t property, v */ typedef uint32_t (*uca_cam_get_property) (struct uca_t *uca, int32_t property, void *data); +/** \brief Allocate number of buffers + * + * The size of each buffer is width x height x bits + */ +typedef uint32_t (*uca_cam_alloc) (struct uca_t *uca, uint32_t n_buffers); + /** * \brief Acquire one frame */ @@ -71,6 +78,7 @@ const char* uca_get_property_name(int32_t property_id); #define UCA_ERR_INIT_NOT_FOUND 1 /**< camera probing or initialization failed */ #define UCA_ERR_PROP_INVALID 2 /**< the requested property is not supported by the camera */ #define UCA_ERR_PROP_GENERAL 3 /**< error occured reading/writing the property */ +#define UCA_ERR_PROP_VALUE_OUT_OF_RANGE 4 /**< error occured writing the property */ /* The property IDs must start with 0 and must be continuous. Whenever this @@ -78,27 +86,36 @@ const char* uca_get_property_name(int32_t property_id); #define UCA_PROP_INVALID -1 #define UCA_PROP_NAME 0 #define UCA_PROP_WIDTH 1 -#define UCA_PROP_HEIGHT 2 +#define UCA_PROP_WIDTH_MIN 2 +#define UCA_PROP_WIDTH_MAX 3 +#define UCA_PROP_HEIGHT 4 +#define UCA_PROP_HEIGHT_MIN 5 +#define UCA_PROP_HEIGHT_MAX 6 #define UCA_PROP_X_OFFSET 3 #define UCA_PROP_Y_OFFSET 4 #define UCA_PROP_MAX_WIDTH 5 #define UCA_PROP_MAX_HEIGHT 6 #define UCA_PROP_BITDEPTH 7 #define UCA_PROP_EXPOSURE 8 -#define UCA_PROP_DELAY 9 -#define UCA_PROP_FRAMERATE 10 -#define UCA_PROP_TRIGGER_MODE 11 +#define UCA_PROP_EXPOSURE_MIN 9 +#define UCA_PROP_EXPOSURE_MAX 10 +#define UCA_PROP_DELAY 11 +#define UCA_PROP_DELAY_MIN 12 +#define UCA_PROP_DELAY_MAX 13 +#define UCA_PROP_FRAMERATE 14 +#define UCA_PROP_TRIGGER_MODE 15 /* pco.edge specific */ -#define UCA_PROP_TIMESTAMP_MODE 12 +#define UCA_PROP_TIMESTAMP_MODE 16 +#define UCA_PROP_SCAN_MODE 17 /* IPE camera specific */ -#define UCA_PROP_INTERLACE_SAMPLE_RATE 13 -#define UCA_PROP_INTERLACE_PIXEL_THRESH 14 -#define UCA_PROP_INTERLACE_ROW_THRESH 15 +#define UCA_PROP_INTERLACE_SAMPLE_RATE 18 +#define UCA_PROP_INTERLACE_PIXEL_THRESH 19 +#define UCA_PROP_INTERLACE_ROW_THRESH 20 /* Photon Focus specific */ -#define UCA_PROP_CORRECTION_MODE 16 +#define UCA_PROP_CORRECTION_MODE 21 /* Possible timestamp modes for UCA_PROP_TIMESTAMP_MODE */ #define UCA_TIMESTAMP_ASCII 0x01 |