3 * \brief VP Stages. Vision Stage default configurations
4 * \author Aurelien Morelle <aurelien.morelle@parrot.com>
6 * \date first release 2007/11/06
10 #include <VP_Os/vp_os_types.h>
11 #include <VP_Os/vp_os_assert.h>
12 #include <VP_Os/vp_os_malloc.h>
14 #include <VP_Stages/vp_stages_configs.h>
16 #include <VP_Stages/vp_stages_io_com.h>
18 #if defined(USE_LINUX) && !(SBOX_UNAME_MACHINE == arm )
19 # include <VP_Stages/vp_stages_o_sdl.h>
22 vp_api_picture_t vp_api_picture;
24 #if defined(USE_LINUX) && !(SBOX_UNAME_MACHINE == arm )
25 static vp_stages_output_sdl_config_t
26 decoding_qcif_sdl_config = {
28 .height = QVGA_HEIGHT,
30 .window_width = QVGA_WIDTH,
31 .window_height = QVGA_HEIGHT,
32 .pic_width = QCIF_WIDTH,
33 .pic_height = QCIF_HEIGHT,
34 .y_size = QCIF_WIDTH*QCIF_HEIGHT,
35 .c_size = (QCIF_WIDTH*QCIF_HEIGHT)>>2,
39 static vp_stages_output_sdl_config_t
40 raw_qcif_sdl_config = {
42 .height = QVGA_HEIGHT,
44 .window_width = QVGA_WIDTH,
45 .window_height = QVGA_HEIGHT,
46 .pic_width = QCIF_WIDTH,
47 .pic_height = QCIF_HEIGHT,
48 .y_size = QCIF_WIDTH*QCIF_HEIGHT,
53 static vp_stages_output_sdl_config_t
54 raw_qqcif_sdl_config = {
56 .height = QVGA_HEIGHT,
58 .window_width = QVGA_WIDTH,
59 .window_height = QVGA_HEIGHT,
60 .pic_width = QQCIF_WIDTH,
61 .pic_height = QQCIF_HEIGHT,
62 .y_size = QQCIF_WIDTH*QQCIF_HEIGHT,
67 static vp_stages_output_sdl_config_t
68 decoding_qvga_sdl_config = {
70 .height = QVGA_HEIGHT,
72 .window_width = QVGA_WIDTH,
73 .window_height = QVGA_HEIGHT,
74 .pic_width = QVGA_WIDTH,
75 .pic_height = QVGA_HEIGHT,
76 .y_size = QVGA_WIDTH*QVGA_HEIGHT,
77 .c_size = (QVGA_WIDTH*QVGA_HEIGHT)>>2,
81 static vp_stages_output_sdl_config_t
82 raw_qvga_sdl_config = {
84 .height = QVGA_HEIGHT,
86 .window_width = QVGA_WIDTH,
87 .window_height = QVGA_HEIGHT,
88 .pic_width = QVGA_WIDTH,
89 .pic_height = QVGA_HEIGHT,
90 .y_size = QVGA_WIDTH*QVGA_HEIGHT,
94 static vp_stages_output_sdl_config_t
95 raw_tweaky_qqvga_sdl_config = {
97 .height = QVGA_HEIGHT,
99 .window_width = QVGA_WIDTH,
100 .window_height = QVGA_HEIGHT,
101 .pic_width = TWEAKY_QQVGA_WIDTH,
102 .pic_height = TWEAKY_QQVGA_HEIGHT,
103 .y_size = TWEAKY_QQVGA_WIDTH*TWEAKY_QQVGA_HEIGHT,
106 #endif // ! __linux__ || USE_MINGW32
108 #if defined(USE_LINUX)
109 static vp_com_serial_config_t
110 uart0_serial_config = {
112 .itfName = "/dev/ttyUSB0",
114 .itfName = "/dev/ser0",
115 #endif // -> __linux__
119 .initial_baudrate = VP_COM_BAUDRATE_115200,
120 .baudrate = VP_COM_BAUDRATE_460800,
124 static vp_com_serial_config_t
125 uart1_serial_config = {
127 .itfName = "/dev/ttyUSB1",
129 .itfName = "/dev/ser1",
130 #endif // -> __linux__
134 .initial_baudrate = VP_COM_BAUDRATE_115200,
135 .baudrate = VP_COM_BAUDRATE_460800,
140 #if defined(USE_BLUEZ)
141 static vp_com_bluetooth_config_t
145 .localHost = "192.168.2.58",
147 .localHost = "192.168.2.23",
148 #endif // -> __linux__
149 .netmask = "255.255.255.0",
150 .broadcast = "192.168.2.255",
151 .gateway = "192.168.2.0",
152 .server = "192.168.2.0",
156 #endif // ! defined(USE_BLUEZ)
160 static vp_com_wifi_config_t
164 .localHost = "10.10.10.2",
167 .localHost = "10.10.10.1",
168 #endif // -> __linux__
169 .netmask = "255.255.255.0",
170 .broadcast = "10.10.10.255",
171 .gateway = "10.10.10.2",
172 .server = "10.10.10.1",
174 .passkey = "9F1C3EE11CBA230B27BF1C1B6F",
180 #define _internal_vp_stages_fill_default_config(cfg, config, size) \
183 VP_OS_ASSERT(size >= sizeof(config)); \
184 vp_os_memcpy(cfg, &config, sizeof(config)); \
190 vp_stages_fill_default_config(DEFAULT_STAGE_CONFIG config, void *cfg, size_t size)
192 C_RESULT res = VP_SUCCESS;
197 vp_os_memset(cfg, 0, size);
202 #if defined(USE_LINUX) && !(SBOX_UNAME_MACHINE == arm )
204 case SDL_RAW_QCIF_CONFIG:
205 _internal_vp_stages_fill_default_config(cfg, raw_qcif_sdl_config, size);
207 case SDL_RAW_QQCIF_CONFIG:
208 _internal_vp_stages_fill_default_config(cfg, raw_qqcif_sdl_config, size);
210 case SDL_DECODING_QCIF_CONFIG:
211 _internal_vp_stages_fill_default_config(cfg, decoding_qcif_sdl_config, size);
213 case SDL_RAW_QVGA_CONFIG:
214 _internal_vp_stages_fill_default_config(cfg, raw_qvga_sdl_config, size);
216 case SDL_RAW_TWEAKY_QQVGA_CONFIG:
217 _internal_vp_stages_fill_default_config(cfg, raw_tweaky_qqvga_sdl_config, size);
219 case SDL_DECODING_QVGA_CONFIG:
220 _internal_vp_stages_fill_default_config(cfg, decoding_qvga_sdl_config, size);
222 #endif // ! __linux__ || USE_MINGW32 || USE_ELINUX
224 #if defined(USE_LINUX)
225 case UART0_COM_CONFIG:
226 _internal_vp_stages_fill_default_config(cfg, uart0_serial_config, size);
228 case UART1_COM_CONFIG:
229 _internal_vp_stages_fill_default_config(cfg, uart1_serial_config, size);
233 #if defined(USE_BLUEZ)
234 case BLUETOOTH_COM_CONFIG:
235 _internal_vp_stages_fill_default_config(cfg, bluetooth_config, size);
237 #endif // ! defined(USE_BLUEZ)
239 case WIFI_COM_CONFIG:
240 _internal_vp_stages_fill_default_config(cfg, wifi_config, size);
251 #undef _internal_vp_stages_fill_default_config