11 std::atomic<uint32_t>* in_max_frame_queue_size,
12 std::shared_ptr<platform::time_service> ts,
13 std::shared_ptr<metadata_parser_map> parsers)
18 return std::make_shared<frame_archive<video_frame>>(in_max_frame_queue_size, ts, parsers);
21 return std::make_shared<frame_archive<composite_frame>>(in_max_frame_queue_size, ts, parsers);
24 return std::make_shared<frame_archive<motion_frame>>(in_max_frame_queue_size, ts, parsers);
27 return std::make_shared<frame_archive<points>>(in_max_frame_queue_size, ts, parsers);
30 return std::make_shared<frame_archive<depth_frame>>(in_max_frame_queue_size, ts, parsers);
33 return std::make_shared<frame_archive<pose_frame>>(in_max_frame_queue_size, ts, parsers);
36 return std::make_shared<frame_archive<disparity_frame>>(in_max_frame_queue_size, ts, parsers);
39 throw std::runtime_error(
"Requested frame type is not supported!");
std::shared_ptr< archive_interface > make_archive(rs2_extension type, std::atomic< uint32_t > *in_max_frame_queue_size, std::shared_ptr< platform::time_service > ts, std::shared_ptr< metadata_parser_map > parsers)
rs2_extension
Specifies advanced interfaces (capabilities) objects may implement.