nopenpilot/selfdrive/camerad/cameras/camera_frame_stream.h

42 lines
768 B
C

#pragma once
#include <stdbool.h>
#define CL_USE_DEPRECATED_OPENCL_1_2_APIS
#ifdef __APPLE__
#include <OpenCL/cl.h>
#else
#include <CL/cl.h>
#endif
#include "camera_common.h"
#define FRAME_BUF_COUNT 16
typedef struct CameraState {
int camera_id;
CameraInfo ci;
int fps;
float digital_gain;
float cur_gain_frac;
CameraBuf buf;
} CameraState;
typedef struct MultiCameraState {
int ispif_fd;
CameraState rear;
CameraState front;
SubMaster *sm;
PubMaster *pm;
} MultiCameraState;
void cameras_init(MultiCameraState *s, cl_device_id device_id, cl_context ctx);
void cameras_open(MultiCameraState *s);
void cameras_run(MultiCameraState *s);
void cameras_close(MultiCameraState *s);
void camera_autoexposure(CameraState *s, float grey_frac);