summaryrefslogtreecommitdiffstats
path: root/src/uca-cam.c
blob: eb76fadb484bc64f925840497f0d8ab086972125 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21

#include <stdlib.h>
#include "uca.h"
#include "uca-cam.h"
#include "uca-grabber.h"

uint32_t uca_cam_alloc(struct uca_camera *cam, uint32_t n_buffers)
{
    uint32_t bitdepth;
    cam->get_property(cam, UCA_PROP_BITDEPTH, &bitdepth, 0);
    const int pixel_size = bitdepth == 8 ? 1 : 2;
    if (cam->grabber != NULL)
        return cam->grabber->alloc(cam->grabber, pixel_size, n_buffers);
    return UCA_NO_ERROR;
}

enum uca_cam_state uca_cam_get_state(struct uca_camera *cam)
{
    return cam->state;
}