30 static std::shared_ptr<matcher> create_DLR_C_matcher(std::vector<stream_interface*> profiles);
31 static std::shared_ptr<matcher> create_DLR_matcher(std::vector<stream_interface*> profiles);
32 static std::shared_ptr<matcher> create_DI_C_matcher(std::vector<stream_interface*> profiles);
33 static std::shared_ptr<matcher> create_DI_matcher(std::vector<stream_interface*> profiles);
35 static std::shared_ptr<matcher> create_identity_matcher(
stream_interface* profiles);
36 static std::shared_ptr<matcher> create_frame_number_matcher(std::vector<stream_interface*> profiles);
37 static std::shared_ptr<matcher> create_timestamp_matcher(std::vector<stream_interface*> profiles);
39 static std::shared_ptr<matcher> create_timestamp_composite_matcher(std::vector<std::shared_ptr<matcher>> matchers);
40 static std::shared_ptr<matcher> create_frame_number_composite_matcher(std::vector<std::shared_ptr<matcher>> matchers);
47 size_t get_sensors_count()
const override;
52 void hardware_reset()
override;
54 virtual std::shared_ptr<matcher> create_matcher(
const frame_holder&
frame)
const override;
71 std::lock_guard<std::mutex> lock(_device_changed_mtx);
76 int add_sensor(std::shared_ptr<sensor_interface>
sensor_base);
77 int assign_sensor(std::shared_ptr<sensor_interface> sensor_base, uint8_t idx);
78 void register_stream_to_extrinsic_group(
const stream_interface& stream, uint32_t groupd_index);
81 explicit device(std::shared_ptr<context> ctx,
83 bool device_changed_notifications =
false);
86 std::map<int, std::pair<uint32_t, std::shared_ptr<const stream_interface>>> _extrinsics;
87 std::vector<std::shared_ptr<sensor_interface>> _sensors;
88 std::shared_ptr<context> _context;
90 bool _is_valid, _device_changed_notifications;
91 mutable std::mutex _device_changed_mtx;
92 uint64_t _callback_id;
stream_interface * find_profile(rs2_stream stream, int index, std::vector< stream_interface *> profiles)
Definition: streaming.h:131
static std::shared_ptr< matcher > create(rs2_matchers matcher, std::vector< stream_interface *> profiles)
Definition: streaming.h:31
bool is_valid() const override
Definition: device.h:69
rs2_matchers
Specifies types of different matchers.
Definition: rs_types.h:127
rs2_stream
Streams are different types of data provided by RealSense devices.
Definition: rs_sensor.h:38
std::shared_ptr< context > get_context() const override
Definition: device.h:58
Definition: streaming.h:106
platform::backend_device_group get_device_data() const override
Definition: device.h:62