Paparazzi UAS  v5.10_stable-5-g83a0da5-dirty
Paparazzi is a free software Unmanned Aircraft System.
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
libisp.h
Go to the documentation of this file.
1 #ifndef _LIBISP_H
2 #define _LIBISP_H
3 
4 #include "reg_avi.h"
6 
7 #define AVI_DEFINE_NODE(EXPANDER) \
8  EXPANDER(chain_bayer_inter) \
9  EXPANDER(vlformat_32to40) \
10  EXPANDER(pedestal) \
11  EXPANDER(green_imbalance) \
12  EXPANDER(green_imbalance_green_red_coeff_mem) \
13  EXPANDER(green_imbalance_green_blue_coeff_mem) \
14  EXPANDER(dead_pixel_correction) \
15  EXPANDER(dead_pixel_correction_list_mem) \
16  EXPANDER(denoising) \
17  EXPANDER(statistics_bayer) \
18  EXPANDER(lens_shading_correction) \
19  EXPANDER(lens_shading_correction_red_coeff_mem) \
20  EXPANDER(lens_shading_correction_green_coeff_mem) \
21  EXPANDER(lens_shading_correction_blue_coeff_mem) \
22  EXPANDER(chromatic_aberration) \
23  EXPANDER(bayer) \
24  EXPANDER(color_correction) \
25  EXPANDER(vlformat_40to32) \
26  EXPANDER(gamma_corrector) \
27  EXPANDER(gamma_corrector_ry_lut) \
28  EXPANDER(gamma_corrector_gu_lut) \
29  EXPANDER(gamma_corrector_bv_lut) \
30  EXPANDER(chroma) \
31  EXPANDER(statistics_yuv) \
32  EXPANDER(statistics_yuv_ae_histogram_y) \
33  EXPANDER(chain_yuv_inter) \
34  EXPANDER(edge_enhancement_color_reduction_filter) \
35  EXPANDER(edge_enhancement_color_reduction_filter_ee_lut) \
36  EXPANDER(i3d_lut) \
37  EXPANDER(i3d_lut_lut_outside) \
38  EXPANDER(i3d_lut_lut_inside) \
39  EXPANDER(drop)
40 
41 #define EXPAND_AS_ENUM(_node) \
42  _node,
43 
44 enum {
47 };
48 
49 /* ISP Context */
51 {
52  int devmem;
53  unsigned long avi_base;
54  unsigned offsets[ISP_NODE_NR];
55 };
56 
57 int configure_isp(struct v4l2_device *dev);
58 
59 /* Registers access */
60 #define EXPAND_AS_PROTOTYPE(_node) \
61  void avi_isp_ ## _node ## _set_registers(struct libisp_context *, \
62  struct avi_isp_ ## _node ## _regs const *regs); \
63  void avi_isp_ ## _node ## _get_registers(struct libisp_context *, \
64  struct avi_isp_ ## _node ## _regs *regs);
65 
67 
68 #endif /* _LIBISP_H */
Capture images from a V4L2 device (Video for Linux 2)
unsigned long avi_base
Definition: libisp.h:53
int devmem
Definition: libisp.h:52
int configure_isp(struct v4l2_device *dev)
Definition: libisp.c:154
static const struct usb_device_descriptor dev
Definition: usb_ser_hw.c:73
#define EXPAND_AS_ENUM(_node)
Definition: libisp.h:41
#define AVI_DEFINE_NODE(EXPANDER)
Definition: libisp.h:7
#define EXPAND_AS_PROTOTYPE(_node)
Definition: libisp.h:60