9 #include "../core/motion.h" 10 #include "TrackingManager.h" 11 #include "../media/playback/playback_device.h" 21 tm2_device(std::shared_ptr<perc::TrackingManager> manager,
22 perc::TrackingDevice* dev,
23 std::shared_ptr<context> ctx,
32 static const char* tm2_device_name()
34 return "Intel RealSense T260";
36 std::shared_ptr<perc::TrackingManager> _manager;
37 perc::TrackingDevice* _dev;
38 std::shared_ptr<tm2_sensor> _sensor;
50 void close()
override;
58 void onVideoFrame(perc::TrackingData::VideoFrame& tm_frame)
override;
59 void onAccelerometerFrame(perc::TrackingData::AccelerometerFrame& tm_frame)
override;
60 void onGyroFrame(perc::TrackingData::GyroFrame& tm_frame)
override;
61 void onPoseFrame(perc::TrackingData::PoseFrame& tm_frame)
override;
62 void onControllerDiscoveryEventFrame(perc::TrackingData::ControllerDiscoveryEventFrame&
frame)
override;
63 void onControllerDisconnectedEventFrame(perc::TrackingData::ControllerDisconnectedEventFrame& frame)
override;
64 void onControllerFrame(perc::TrackingData::ControllerFrame& frame)
override;
65 void onControllerConnectedEventFrame(perc::TrackingData::ControllerConnectedEventFrame& frame)
override;
69 bool is_loopback_enabled()
const;
70 void attach_controller(
const std::array<uint8_t, 6>& mac_addr);
71 void detach_controller(
int id);
74 void handle_imu_frame(perc::TrackingData::TimestampedData& tm_frame_ts,
unsigned long long frame_number,
rs2_stream stream_type,
int index,
float3 imu_data,
float temperature);
76 void raise_controller_event(
const std::string& msg,
const std::string&
serialized_data,
double timestamp);
77 void raise_error_notification(
const std::string& msg);
80 perc::TrackingDevice* _tm_dev;
81 std::mutex _configure_lock;
82 std::shared_ptr<playback_device> _loopback;
83 perc::TrackingData::Profile _tm_supported_profiles;
84 perc::TrackingData::Profile _tm_active_profiles;
std::shared_ptr< rs2_frame_callback > frame_callback_ptr
Definition: types.h:896
Definition: concurrency.h:125
tm2_device(std::shared_ptr< perc::TrackingManager > manager, perc::TrackingDevice *dev, std::shared_ptr< context > ctx, const platform::backend_device_group &group)
Definition: serialization.h:48
Definition: tm-device.h:18
void disable_loopback() override
bool is_enabled() const override
void connect_controller(const std::array< uint8_t, 6 > &mac_address) override
std::vector< std::shared_ptr< stream_profile_interface >> stream_profiles
Definition: streaming.h:104
void enable_loopback(const std::string &source_file) override
rs2_stream
Streams are different types of data provided by RealSense devices.
Definition: rs_sensor.h:38
Video stream intrinsics.
Definition: rs_types.h:56
Motion device intrinsics: scale, bias, and variances.
Definition: rs_types.h:69
void disconnect_controller(int id) override
Definition: tm-device.h:41