Intel® RealSense™ Cross Platform API  2.13.0
Intel Realsense Cross-platform API
rs_frame.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 
10 #ifndef LIBREALSENSE_RS2_FRAME_H
11 #define LIBREALSENSE_RS2_FRAME_H
12 
13 #ifdef __cplusplus
14 extern "C" {
15 #endif
16 #include "rs_types.h"
17 
20 {
26 
29 {
64 
67 typedef struct rs2_vertex
68 {
69  float xyz[3];
70 } rs2_vertex;
71 
73 typedef struct rs2_pixel
74 {
75  int ij[2];
76 } rs2_pixel;
77 
79 typedef struct rs2_vector
80 {
81  float x, y, z;
82 }rs2_vector;
83 
85 typedef struct rs2_quaternion
86 {
87  float x, y, z, w;
89 
90 typedef struct rs2_pose
91 {
98  unsigned int tracker_confidence;
99  unsigned int mapper_confidence;
100 } rs2_pose;
101 
102 
111 
119 int rs2_supports_frame_metadata(const rs2_frame* frame, rs2_frame_metadata_value frame_metadata, rs2_error** error);
120 
130 
138 
145 unsigned long long rs2_get_frame_number(const rs2_frame* frame, rs2_error** error);
146 
153 const void* rs2_get_frame_data(const rs2_frame* frame, rs2_error** error);
154 
161 int rs2_get_frame_width(const rs2_frame* frame, rs2_error** error);
162 
169 int rs2_get_frame_height(const rs2_frame* frame, rs2_error** error);
170 
177 int rs2_get_frame_stride_in_bytes(const rs2_frame* frame, rs2_error** error);
178 
186 int rs2_get_frame_bits_per_pixel(const rs2_frame* frame, rs2_error** error);
187 
194 void rs2_frame_add_ref(rs2_frame* frame, rs2_error ** error);
195 
200 void rs2_release_frame(rs2_frame* frame);
201 
208 void rs2_keep_frame(rs2_frame* frame);
209 
217 rs2_vertex* rs2_get_frame_vertices(const rs2_frame* frame, rs2_error** error);
218 
226 void rs2_export_to_ply(const rs2_frame* frame, const char* fname, rs2_frame* texture, rs2_error** error);
227 
236 
243 int rs2_get_frame_points_count(const rs2_frame* frame, rs2_error** error);
244 
252 
260 int rs2_is_frame_extendable_to(const rs2_frame* frame, rs2_extension extension_type, rs2_error ** error);
261 
277  int new_bpp, int new_width, int new_height, int new_stride, rs2_extension frame_type, rs2_error** error);
278 
288 rs2_frame* rs2_allocate_composite_frame(rs2_source* source, rs2_frame** frames, int count, rs2_error** error);
289 
299 rs2_frame* rs2_extract_frame(rs2_frame* composite, int index, rs2_error** error);
300 
307 int rs2_embedded_frames_count(rs2_frame* composite, rs2_error** error);
308 
315 void rs2_synthetic_frame_ready(rs2_source* source, rs2_frame* frame, rs2_error** error);
316 
317 
324 void rs2_pose_frame_get_pose_data(const rs2_frame* frame, rs2_pose* pose, rs2_error** error);
325 
326 
327 
328 
329 #ifdef __cplusplus
330 }
331 #endif
332 #endif
void rs2_export_to_ply(const rs2_frame *frame, const char *fname, rs2_frame *texture, rs2_error **error)
Definition: rs_frame.h:33
Definition: rs_frame.h:32
int rs2_get_frame_points_count(const rs2_frame *frame, rs2_error **error)
const rs2_stream_profile * rs2_get_frame_stream_profile(const rs2_frame *frame, rs2_error **error)
float y
Definition: rs_frame.h:87
rs2_frame * rs2_allocate_composite_frame(rs2_source *source, rs2_frame **frames, int count, rs2_error **error)
rs2_vector angular_acceleration
Definition: rs_frame.h:97
const char * rs2_timestamp_domain_to_string(rs2_timestamp_domain info)
const char * rs2_frame_metadata_to_string(rs2_frame_metadata_value metadata)
float z
Definition: rs_frame.h:81
unsigned int tracker_confidence
Definition: rs_frame.h:98
Definition: rs_frame.h:21
int rs2_is_frame_extendable_to(const rs2_frame *frame, rs2_extension extension_type, rs2_error **error)
Definition: rs_frame.h:40
Definition: rs_frame.h:56
void rs2_keep_frame(rs2_frame *frame)
rs2_vector translation
Definition: rs_frame.h:92
rs2_time_t rs2_get_frame_timestamp(const rs2_frame *frame, rs2_error **error)
rs2_pixel * rs2_get_frame_texture_coordinates(const rs2_frame *frame, rs2_error **error)
3D coordinates with origin at topmost left corner of the lense, with positive Z pointing away from th...
Definition: rs_frame.h:67
Definition: rs_frame.h:50
const char * rs2_frame_metadata_value_to_string(rs2_frame_metadata_value metadata)
float x
Definition: rs_frame.h:87
int rs2_supports_frame_metadata(const rs2_frame *frame, rs2_frame_metadata_value frame_metadata, rs2_error **error)
rs2_vector angular_velocity
Definition: rs_frame.h:96
struct rs2_quaternion rs2_quaternion
Quaternion used to represent rotation.
Definition: rs_frame.h:51
int rs2_get_frame_height(const rs2_frame *frame, rs2_error **error)
Definition: rs_frame.h:23
unsigned int mapper_confidence
Definition: rs_frame.h:99
Quaternion used to represent rotation.
Definition: rs_frame.h:85
Definition: rs_frame.h:44
int rs2_get_frame_stride_in_bytes(const rs2_frame *frame, rs2_error **error)
Definition: rs_frame.h:36
rs2_frame * rs2_allocate_synthetic_video_frame(rs2_source *source, const rs2_stream_profile *new_stream, rs2_frame *original, int new_bpp, int new_width, int new_height, int new_stride, rs2_extension frame_type, rs2_error **error)
float y
Definition: rs_frame.h:81
rs2_vector velocity
Definition: rs_frame.h:93
int rs2_embedded_frames_count(rs2_frame *composite, rs2_error **error)
Definition: rs_frame.h:30
Exposes RealSense structs.
int rs2_get_frame_width(const rs2_frame *frame, rs2_error **error)
Definition: rs_frame.h:45
Definition: rs_frame.h:60
rs2_timestamp_domain rs2_get_frame_timestamp_domain(const rs2_frame *frameset, rs2_error **error)
Definition: rs_frame.h:90
void rs2_synthetic_frame_ready(rs2_source *source, rs2_frame *frame, rs2_error **error)
int ij[2]
Definition: rs_frame.h:75
rs2_quaternion rotation
Definition: rs_frame.h:95
struct rs2_vertex rs2_vertex
3D coordinates with origin at topmost left corner of the lense, with positive Z pointing away from th...
struct rs2_pose rs2_pose
Definition: rs_frame.h:47
struct rs2_stream_profile rs2_stream_profile
Definition: rs_types.h:158
Definition: rs_frame.h:37
unsigned long long rs2_get_frame_number(const rs2_frame *frame, rs2_error **error)
Definition: rs_frame.h:34
float x
Definition: rs_frame.h:81
Definition: rs_frame.h:55
struct rs2_source rs2_source
Definition: rs_types.h:163
Definition: rs_frame.h:46
Definition: rs_frame.h:41
Definition: rs_frame.h:39
Definition: rs_frame.h:31
struct rs2_vector rs2_vector
3D vector in Euclidean coordinate space
3D vector in Euclidean coordinate space
Definition: rs_frame.h:79
float w
Definition: rs_frame.h:87
Definition: rs_frame.h:52
rs2_extension
Specifies advanced interfaces (capabilities) objects may implement.
Definition: rs_types.h:94
long long rs2_metadata_type
Definition: rs_types.h:181
Definition: rs_frame.h:49
rs2_vertex * rs2_get_frame_vertices(const rs2_frame *frame, rs2_error **error)
void rs2_frame_add_ref(rs2_frame *frame, rs2_error **error)
rs2_vector acceleration
Definition: rs_frame.h:94
void rs2_release_frame(rs2_frame *frame)
rs2_frame * rs2_extract_frame(rs2_frame *composite, int index, rs2_error **error)
struct rs2_pixel rs2_pixel
Pixel location within 2D image. (0,0) is the topmost, left corner. Positive X is right, positive Y is down.
rs2_metadata_type rs2_get_frame_metadata(const rs2_frame *frame, rs2_frame_metadata_value frame_metadata, rs2_error **error)
struct rs2_error rs2_error
Definition: rs_types.h:149
double rs2_time_t
Definition: rs_types.h:180
float xyz[3]
Definition: rs_frame.h:69
Definition: rs_frame.h:42
Definition: rs_frame.h:38
float z
Definition: rs_frame.h:87
void rs2_pose_frame_get_pose_data(const rs2_frame *frame, rs2_pose *pose, rs2_error **error)
Definition: rs_frame.h:22
int rs2_get_frame_bits_per_pixel(const rs2_frame *frame, rs2_error **error)
rs2_frame_metadata_value
Per-Frame-Metadata are set of read-only properties that might be exposed for each individual frame...
Definition: rs_frame.h:28
struct rs2_frame rs2_frame
Definition: rs_types.h:151
const void * rs2_get_frame_data(const rs2_frame *frame, rs2_error **error)
Pixel location within 2D image. (0,0) is the topmost, left corner. Positive X is right, positive Y is down.
Definition: rs_frame.h:73
rs2_timestamp_domain
Specifies the clock in relation to which the frame timestamp was measured.
Definition: rs_frame.h:19