#include <record_device.h>
Public Member Functions | |
bool | compress_while_record () const override |
bool | contradicts (const stream_profile_interface *a, const std::vector< stream_profile > &others) const override |
virtual std::shared_ptr< matcher > | create_matcher (const frame_holder &frame) const override |
bool | extend_to (rs2_extension extension_type, void **ext) override |
std::shared_ptr< context > | get_context () const override |
platform::backend_device_group | get_device_data () const override |
std::pair< uint32_t, rs2_extrinsics > | get_extrinsics (const stream_interface &stream) const override |
const std::string & | get_filename () const |
const std::string & | get_info (rs2_camera_info info) const override |
std::vector< tagged_profile > | get_profiles_tags () const override |
sensor_interface & | get_sensor (size_t i) override |
const sensor_interface & | get_sensor (size_t i) const override |
size_t | get_sensors_count () const override |
void | hardware_reset () override |
bool | is_valid () const override |
void | pause_recording () |
record_device (std::shared_ptr< device_interface > device, std::shared_ptr< device_serializer::writer > serializer) | |
void | resume_recording () |
bool | supports_info (rs2_camera_info info) const override |
void | tag_profiles (stream_profiles profiles) const override |
virtual | ~record_device () |
Public Member Functions inherited from librealsense::device_interface | |
virtual | ~device_interface ()=default |
Public Member Functions inherited from librealsense::info_interface | |
virtual | ~info_interface ()=default |
Public Member Functions inherited from librealsense::recordable< info_interface > | |
virtual | ~recordable ()=default |
Public Member Functions inherited from librealsense::extendable_interface | |
virtual | ~extendable_interface ()=default |
Public Member Functions inherited from librealsense::info_container | |
void | create_snapshot (std::shared_ptr< info_interface > &snapshot) const override |
void | enable_recording (std::function< void(const info_interface &)> record_action) override |
void | register_info (rs2_camera_info info, const std::string &val) |
void | update (std::shared_ptr< extension_snapshot > ext) override |
void | update_info (rs2_camera_info info, const std::string &val) |
Public Member Functions inherited from librealsense::extension_snapshot | |
virtual | ~extension_snapshot ()=default |
Static Public Attributes | |
static const uint64_t | MAX_CACHED_DATA_SIZE = 1920 * 1080 * 4 * 30 |
Private Member Functions | |
std::vector< std::shared_ptr< record_sensor > > | create_record_sensors (std::shared_ptr< device_interface > m_device) |
template<rs2_extension E, typename P > | |
bool | extend_to_aux (std::shared_ptr< P > p, void **ext) |
std::chrono::nanoseconds | get_capture_time () const |
template<typename T > | |
device_serializer::snapshot_collection | get_extensions_snapshots (T *extendable) |
void | initialize_recording () |
void | stop_gracefully (to_string error_msg) |
template<typename T , typename Ext > | |
void | try_add_snapshot (T *extendable, device_serializer::snapshot_collection &snapshots) |
void | write_data (size_t sensor_index, frame_holder f, std::function< void(std::string const &)> on_error) |
template<typename T > | |
void | write_device_extension_changes (const T &ext) |
void | write_header () |
void | write_notification (size_t sensor_index, const notification &n) |
void | write_sensor_extension_snapshot (size_t sensor_index, rs2_extension ext, std::shared_ptr< extension_snapshot > snapshot, std::function< void(std::string const &)> on_error) |
Private Attributes | |
uint64_t | m_cached_data_size |
std::chrono::high_resolution_clock::time_point | m_capture_time_base |
std::shared_ptr< device_interface > | m_device |
std::once_flag | m_first_call_flag |
std::once_flag | m_first_frame_flag |
bool | m_is_recording |
std::mutex | m_mutex |
int | m_on_extension_change_token |
int | m_on_frame_token |
int | m_on_notification_token |
std::chrono::high_resolution_clock::duration | m_record_pause_time |
std::shared_ptr< device_serializer::writer > | m_ros_writer |
std::vector< std::shared_ptr< record_sensor > > | m_sensors |
std::chrono::high_resolution_clock::time_point | m_time_of_pause |
lazy< std::shared_ptr< dispatcher > > | m_write_thread |
Definition at line 16 of file record_device.h.
librealsense::record_device::record_device | ( | std::shared_ptr< device_interface > | device, |
std::shared_ptr< device_serializer::writer > | serializer | ||
) |
Definition at line 12 of file record_device.cpp.
|
virtual |
Definition at line 54 of file record_device.cpp.
|
inlineoverridevirtual |
Implements librealsense::device_interface.
Definition at line 48 of file record_device.h.
|
inlineoverridevirtual |
Implements librealsense::device_interface.
Definition at line 49 of file record_device.h.
|
overridevirtual |
Implements librealsense::device_interface.
Definition at line 418 of file record_device.cpp.
|
private |
Definition at line 35 of file record_device.cpp.
|
overridevirtual |
Implements librealsense::extendable_interface.
Definition at line 349 of file record_device.cpp.
|
private |
Definition at line 331 of file record_device.cpp.
|
private |
Definition at line 106 of file record_device.cpp.
|
overridevirtual |
Implements librealsense::device_interface.
Definition at line 73 of file record_device.cpp.
|
overridevirtual |
Implements librealsense::device_interface.
Definition at line 414 of file record_device.cpp.
|
private |
Go over the extendable instance and find all extensions
T |
extendable |
Definition at line 229 of file record_device.cpp.
|
overridevirtual |
Implements librealsense::device_interface.
Definition at line 438 of file record_device.cpp.
const std::string & librealsense::record_device::get_filename | ( | ) | const |
Definition at line 410 of file record_device.cpp.
|
overridevirtual |
Reimplemented from librealsense::info_container.
Definition at line 174 of file record_device.cpp.
|
inlineoverridevirtual |
Implements librealsense::device_interface.
Definition at line 46 of file record_device.h.
|
overridevirtual |
Implements librealsense::device_interface.
Definition at line 78 of file record_device.cpp.
|
overridevirtual |
Implements librealsense::device_interface.
Definition at line 184 of file record_device.cpp.
|
overridevirtual |
Implements librealsense::device_interface.
Definition at line 83 of file record_device.cpp.
|
overridevirtual |
Implements librealsense::device_interface.
Definition at line 188 of file record_device.cpp.
|
private |
Definition at line 423 of file record_device.cpp.
|
overridevirtual |
Implements librealsense::device_interface.
Definition at line 443 of file record_device.cpp.
void librealsense::record_device::pause_recording | ( | ) |
Definition at line 374 of file record_device.cpp.
void librealsense::record_device::resume_recording | ( | ) |
Definition at line 393 of file record_device.cpp.
Definition at line 429 of file record_device.cpp.
|
overridevirtual |
Reimplemented from librealsense::info_container.
Definition at line 179 of file record_device.cpp.
|
inlineoverridevirtual |
Implements librealsense::device_interface.
Definition at line 47 of file record_device.h.
|
private |
Definition at line 194 of file record_device.cpp.
|
private |
Definition at line 116 of file record_device.cpp.
|
private |
Definition at line 267 of file record_device.cpp.
|
private |
Definition at line 88 of file record_device.cpp.
|
private |
Definition at line 312 of file record_device.cpp.
|
private |
Definition at line 292 of file record_device.cpp.
|
private |
Definition at line 79 of file record_device.h.
|
private |
Definition at line 69 of file record_device.h.
|
private |
Definition at line 63 of file record_device.h.
|
private |
Definition at line 80 of file record_device.h.
|
private |
Definition at line 75 of file record_device.h.
|
private |
Definition at line 74 of file record_device.h.
|
private |
Definition at line 73 of file record_device.h.
|
private |
Definition at line 78 of file record_device.h.
|
private |
Definition at line 77 of file record_device.h.
|
private |
Definition at line 76 of file record_device.h.
|
private |
Definition at line 70 of file record_device.h.
|
private |
Definition at line 67 of file record_device.h.
|
private |
Definition at line 64 of file record_device.h.
|
private |
Definition at line 71 of file record_device.h.
|
private |
Definition at line 66 of file record_device.h.
|
static |
Definition at line 21 of file record_device.h.