DJI Thermal SDK API v1.4 Infrared camera image processing and temperature measurement library API

dirp_wrapper.h
Go to the documentation of this file.
1 /*
2 * DJI Thermal SDK wrapper header
3 *
4 * @Copyright (c) 2020-2023 DJI. All rights reserved.
5 *
6 * Permission is hereby granted, free of charge, to any person obtaining a copy
7 * of this software and associated documentation files (the "Software"), to deal
8 * in the Software without restriction, including without limitation the rights
9 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10 * copies of the Software, and to permit persons to whom the Software is
11 * furnished to do so, subject to the following conditions:
12 *
13 * The above copyright notice and this permission notice shall be included in
14 * all copies or substantial portions of the Software.
15 *
16 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22 * SOFTWARE.
23 *
24 */
25
26 #pragma once
27
28 #ifndef _DIRP_WRAPPER_H_
29 #define _DIRP_WRAPPER_H_
30
31 #include "dirp_api.h"
32
33 #ifdef __cplusplus
34 extern "C" {
35 #endif
36
37 typedef void *DIRPV_HANDLE;
38
39 typedef struct
40 {
41 int32_t (*create_from_rjpeg) (const uint8_t *, int32_t, DIRPV_HANDLE *);
42 int32_t (*destroy) (DIRPV_HANDLE);
43 int32_t (*get_rjpeg_version) (DIRPV_HANDLE, dirp_rjpeg_version_t *);
44 int32_t (*get_rjpeg_resolution) (DIRPV_HANDLE, dirp_resolution_t *);
45 int32_t (*get_original_raw) (DIRPV_HANDLE, uint16_t *, int32_t);
46 int32_t (*process) (DIRPV_HANDLE, uint8_t *, int32_t );
47 int32_t (*process_strech) (DIRPV_HANDLE, float *, int32_t);
48 int32_t (*measure) (DIRPV_HANDLE, int16_t *, int32_t);
49 int32_t (*measure_ex) (DIRPV_HANDLE, float *, int32_t);
50 int32_t (*set_isotherm) (DIRPV_HANDLE, const dirp_isotherm_t *);
51 int32_t (*get_isotherm) (DIRPV_HANDLE, dirp_isotherm_t *);
52 int32_t (*set_color_bar) (DIRPV_HANDLE, const dirp_color_bar_t *);
53 int32_t (*get_color_bar) (DIRPV_HANDLE, dirp_color_bar_t *);
54 int32_t (*get_color_bar_adaptive_params) (DIRPV_HANDLE, dirp_color_bar_t *);
55 int32_t (*set_pseudo_color) (DIRPV_HANDLE, dirp_pseudo_color_e);
56 int32_t (*get_pseudo_color) (DIRPV_HANDLE, dirp_pseudo_color_e *);
57 int32_t (*set_enhancement_params) (DIRPV_HANDLE, const dirp_enhancement_params_t *);
58 int32_t (*get_enhancement_params) (DIRPV_HANDLE, dirp_enhancement_params_t *);
59 int32_t (*set_measurement_params) (DIRPV_HANDLE, const dirp_measurement_params_t *);
60 int32_t (*get_measurement_params) (DIRPV_HANDLE, dirp_measurement_params_t *);
61 int32_t (*get_measurement_params_range) (DIRPV_HANDLE, dirp_measurement_params_range_t*);
62 int32_t (*get_pseudo_color_lut) (dirp_isp_pseudo_color_lut_t *);
63 void (*set_verbose_level) (dirp_verbose_level_e);
64 } dirp_api_wrapper_t;
65
66 typedef int32_t (*func_dirp_vendor_get_api)(dirp_api_wrapper_t *);
67
68 dllexport int32_t dirp_vendor_get_api(dirp_api_wrapper_t *api);
69
70 #ifdef __cplusplus
71 }
72 #endif
73
74 #endif /* _DIRP_WRAPPER_H_ */
dirp_pseudo_color_e
dirp_pseudo_color_e
Palette types.
Definition: dirp_api.h:76
DIRPV_HANDLE
void * DIRPV_HANDLE
Definition: dirp_wrapper.h:37
dirp_verbose_level_e
dirp_verbose_level_e
Definition: dirp_api.h:91
dirp_measurement_params_range_t
Range of temperature measurement parameteres structure definition.
Definition: dirp_api.h:183
dirp_isotherm_t
Isotherm parameters structure definition.
Definition: dirp_api.h:132
dirp_vendor_get_api
dllexport int32_t dirp_vendor_get_api(dirp_api_wrapper_t *api)
dirp_isp_pseudo_color_lut_t
Pseudo color LUT array structure definition.
Definition: dirp_api.h:150
dirp_enhancement_params_t
Image enhancement parameteres structure definition.
Definition: dirp_api.h:159
dirp_rjpeg_version_t
R-JPEG version structure definition.
Definition: dirp_api.h:113
dirp_api_wrapper_t
Definition: dirp_wrapper.h:39
dllexport
#define dllexport
Definition: dirp_api.h:36
func_dirp_vendor_get_api
int32_t(* func_dirp_vendor_get_api)(dirp_api_wrapper_t *)
Definition: dirp_wrapper.h:66
dirp_color_bar_t
Color bar parameters structure definition.
Definition: dirp_api.h:141
dirp_api.h
dirp_resolution_t
The image size structure definition.
Definition: dirp_api.h:124
dirp_measurement_params_t
Customize temperature measurement parameteres structure definition.
Definition: dirp_api.h:167