2 #ifndef LIBREALSENSE_TIMESTAMPS_H
3 #define LIBREALSENSE_TIMESTAMPS_H
5 #include "../include/librealsense/rs.h"
7 #include <condition_variable>
35 std::deque<rs_timestamp_data> data_queue;
62 std::condition_variable cv;
63 std::atomic<uint32_t>* event_queue_size;
64 std::atomic<uint32_t>* events_timeout;
Definition: timestamps.h:26
bool correct(frame_interface &frame)
void push_back_data(rs_timestamp_data data)
bool erase(rs_timestamp_data data)
Definition: timestamps.h:40
virtual ~timestamp_corrector_interface()
Definition: timestamps.h:42
virtual void on_timestamp(rs_timestamp_data data)=0
virtual void correct_timestamp(frame_interface &frame, rs_stream stream)=0
Definition: timestamps.h:49
timestamp_corrector(std::atomic< uint32_t > *event_queue_size, std::atomic< uint32_t > *events_timeout)
void on_timestamp(rs_timestamp_data data) override
void correct_timestamp(frame_interface &frame, rs_stream stream) override
~timestamp_corrector() override
void release() override
Definition: timestamps.h:55
frame_metadata
Types of value provided from the device with each frame.
Definition: rs.hpp:161
timestamp_domain
Specifies the clock in relation to which the frame timestamp was measured.
Definition: rs.hpp:243
stream
Streams are different types of data provided by RealSense devices.
Definition: rs.hpp:25
rs_stream
Streams are different types of data provided by RealSense devices.
Definition: rs.h:34
rs_frame_metadata
Types of value provided from the device with each frame.
Definition: rs.h:204
rs_event_source
Source device that triggered a specific timestamp event from the motion module.
Definition: rs.h:277
@ RS_EVENT_SOURCE_COUNT
Definition: rs.h:285
rs_timestamp_domain
Specifies the clock in relation to which the frame timestamp was measured.
Definition: rs.h:293
Timestamp data from the motion microcontroller.
Definition: rs.h:340
Definition: timestamps.h:15
virtual rs_stream get_stream_type() const =0
virtual void set_timestamp_domain(rs_timestamp_domain timestamp_domain)=0
virtual unsigned long long get_frame_number() const =0
virtual void set_timestamp(double new_ts)=0
virtual ~frame_interface()
Definition: timestamps.h:16
virtual double get_frame_metadata(rs_frame_metadata frame_metadata) const =0
virtual bool supports_frame_metadata(rs_frame_metadata frame_metadata) const =0