Intel® RealSense™ Cross Platform API
Intel Realsense Cross-platform API
rs_types.h
Go to the documentation of this file.
1 /* License: Apache 2.0. See LICENSE file in root directory.
2  Copyright(c) 2017 Intel Corporation. All Rights Reserved. */
3 
9 #ifndef LIBREALSENSE_RS2_TYPES_H
10 #define LIBREALSENSE_RS2_TYPES_H
11 
12 #ifdef __cplusplus
13 extern "C" {
14 #endif
15 
26 
28 typedef enum rs2_exception_type
29 {
41 
43 typedef enum rs2_distortion
44 {
52 const char* rs2_distortion_to_string(rs2_distortion distortion);
53 
55 typedef struct rs2_intrinsics
56 {
57  int width;
58  int height;
59  float ppx;
60  float ppy;
61  float fx;
62  float fy;
64  float coeffs[5];
66 
69 {
70  /* \internal
71  * Scale X cross axis cross axis Bias X \n
72  * cross axis Scale Y cross axis Bias Y \n
73  * cross axis cross axis Scale Z Bias Z */
74  float data[3][4];
76  float noise_variances[3];
77  float bias_variances[3];
79 
81 typedef enum rs2_log_severity {
91 
93 typedef enum rs2_extension
94 {
121 } rs2_extension;
123 const char* rs2_extension_to_string(rs2_extension type);
124 
126 typedef enum rs2_matchers
127 {
128  RS2_MATCHER_DI, //compare depth and ir based on frame number
129 
130  RS2_MATCHER_DI_C, //compare depth and ir based on frame number,
131  //compare the pair of corresponding depth and ir with color based on closest timestamp,
132  //commonlly used by SR300
133 
134  RS2_MATCHER_DLR_C, //compare depth, left and right ir based on frame number,
135  //compare the set of corresponding depth, left and right with color based on closest timestamp,
136  //commonlly used by RS415, RS435
137 
138  RS2_MATCHER_DLR, //compare depth, left and right ir based on frame number,
139  //commonlly used by RS400, RS405, RS410, RS420, RS430
140 
141  RS2_MATCHER_DEFAULT, //the default matcher compare all the streams based on closest timestamp
142 
144 }rs2_matchers;
145 
147 typedef struct rs2_device rs2_device;
148 typedef struct rs2_error rs2_error;
150 typedef struct rs2_frame rs2_frame;
152 typedef struct rs2_pipeline rs2_pipeline;
154 typedef struct rs2_config rs2_config;
160 typedef struct rs2_syncer rs2_syncer;
162 typedef struct rs2_source rs2_source;
166 typedef struct rs2_context rs2_context;
169 typedef struct rs2_sensor rs2_sensor;
170 typedef struct rs2_options rs2_options;
176 typedef void (*rs2_frame_callback_ptr)(rs2_frame*, void*);
177 typedef void (*rs2_frame_processor_callback_ptr)(rs2_frame**, int, rs2_source*, void*);
178 
179 typedef double rs2_time_t;
180 typedef long long rs2_metadata_type;
183 const char* rs2_get_failed_function (const rs2_error* error);
184 const char* rs2_get_failed_args (const rs2_error* error);
185 const char* rs2_get_error_message (const rs2_error* error);
186 void rs2_free_error (rs2_error* error);
187 
188 #ifdef __cplusplus
189 }
190 #endif
191 #endif
Definition: rs_types.h:85
struct rs2_device_serializer rs2_device_serializer
Definition: rs_types.h:161
Definition: rs_types.hpp:27
Definition: rs_types.h:141
rs2_exception_type
Exception types are the different categories of errors that RealSense API might return.
Definition: rs_types.h:28
void rs2_free_error(rs2_error *error)
Definition: rs_types.h:98
Definition: context.h:23
Definition: rs_types.hpp:41
Definition: rs_types.h:46
Definition: rs_types.h:104
struct rs2_frame_queue rs2_frame_queue
Definition: rs_types.h:151
rs2_distortion
Distortion model: defines how pixel coordinates should be mapped to sensor coordinates.
Definition: rs_types.h:43
Definition: rs_types.h:35
const char * rs2_distortion_to_string(rs2_distortion distortion)
struct rs2_pipeline rs2_pipeline
Definition: rs_types.h:152
struct rs2_context rs2_context
Definition: rs_types.h:166
Definition: rs_types.h:84
struct rs2_sensor_list rs2_sensor_list
Definition: rs_types.h:168
Definition: rs_types.h:106
Definition: api.h:18
Definition: rs_types.h:50
void(* rs2_frame_processor_callback_ptr)(rs2_frame **, int, rs2_source *, void *)
Definition: rs_types.h:177
float data[3][4]
Definition: rs_types.h:74
Definition: rs_types.hpp:62
Definition: rs_types.h:49
float coeffs[5]
Definition: rs_types.h:64
Definition: rs_types.h:30
Definition: rs_types.h:118
const char * rs2_extension_to_string(rs2_extension type)
Definition: rs_types.h:102
Definition: rs_types.h:108
struct rs2_sensor rs2_sensor
Definition: rs_types.h:169
Definition: rs_types.hpp:48
Definition: rs_types.h:82
Definition: rs_types.h:114
float ppx
Definition: rs_types.h:59
const char * rs2_exception_type_to_string(rs2_exception_type type)
Definition: rs_types.h:95
Definition: rs_types.h:119
struct rs2_pipeline_profile rs2_pipeline_profile
Definition: rs_types.h:153
float noise_variances[3]
Definition: rs_types.h:76
struct rs2_config rs2_config
Definition: rs_types.h:154
Definition: processing.h:12
Definition: rs_types.h:45
Definition: rs_types.h:38
Definition: rs_types.h:37
struct rs2_device_hub rs2_device_hub
Definition: rs_types.h:167
Definition: rs_types.h:128
Definition: rs_types.h:107
Definition: rs_types.h:101
Definition: rs_types.h:32
Definition: context.h:29
Definition: rs_types.hpp:34
Definition: rs_types.h:112
const char * rs2_get_error_message(const rs2_error *error)
rs2_matchers
Specifies types of different matchers.
Definition: rs_types.h:126
const char * rs2_extension_type_to_string(rs2_extension type)
Definition: rs_types.h:99
Definition: rs_types.h:48
Definition: rs_types.h:105
struct rs2_motion_device_intrinsic rs2_motion_device_intrinsic
Motion device intrinsics: scale, bias, and variances.
struct rs2_stream_profile_list rs2_stream_profile_list
Definition: rs_types.h:156
Definition: rs_types.h:113
void(* rs2_devices_changed_callback_ptr)(rs2_device_list *, rs2_device_list *, void *)
Definition: rs_types.h:175
Definition: api.h:34
int width
Definition: rs_types.h:57
Definition: rs_types.h:87
Definition: rs_types.h:109
rs2_exception_type rs2_get_librealsense_exception_type(const rs2_error *error)
struct rs2_options rs2_options
Definition: rs_types.h:170
struct rs2_syncer rs2_syncer
Definition: rs_types.h:160
Definition: rs_types.h:47
Definition: rs_types.h:100
Definition: rs_types.h:143
Definition: context.h:35
Definition: rs_types.h:86
Definition: rs_types.h:88
Definition: rs_types.h:120
Definition: rs_types.h:117
Definition: rs_types.h:103
Definition: rs_types.h:83
Definition: rs_types.h:23
struct rs2_intrinsics rs2_intrinsics
Video stream intrinsics.
rs2_distortion model
Definition: rs_types.h:63
struct rs2_processing_block rs2_processing_block
Definition: rs_types.h:163
Definition: rs_types.h:96
rs2_extension
Specifies advanced interfaces (capabilities) objects may implement.
Definition: rs_types.h:93
rs2_notification_category
Category of the librealsense notifications.
Definition: rs_types.h:17
void(* rs2_notification_callback_ptr)(rs2_notification *, void *)
Definition: rs_types.h:174
long long rs2_metadata_type
Definition: rs_types.h:180
Definition: rs_types.h:110
float fy
Definition: rs_types.h:62
float fx
Definition: rs_types.h:61
Definition: rs_types.h:97
Video stream intrinsics.
Definition: rs_types.h:55
Definition: api.h:26
Motion device intrinsics: scale, bias, and variances.
Definition: rs_types.h:68
void(* rs2_frame_callback_ptr)(rs2_frame *, void *)
Definition: rs_types.h:176
int height
Definition: rs_types.h:58
Definition: rs_types.h:130
const char * rs2_notification_category_to_string(rs2_notification_category category)
const char * rs2_log_severity_to_string(rs2_log_severity info)
Definition: rs_types.hpp:55
Definition: rs_types.h:115
Definition: rs_types.h:116
double rs2_time_t
Definition: rs_types.h:179
rs2_log_severity
Severity of the librealsense logger.
Definition: rs_types.h:81
Definition: rs_types.h:138
Definition: rs_types.h:111
Definition: api.h:13
const char * rs2_get_failed_function(const rs2_error *error)
const char * rs2_get_failed_args(const rs2_error *error)
Definition: rs_types.h:134
float bias_variances[3]
Definition: rs_types.h:77
Definition: rs_types.h:33
struct rs2_frame rs2_frame
Definition: rs_types.h:150
float ppy
Definition: rs_types.h:60