archive.h
Go to the documentation of this file.
1 // License: Apache 2.0. See LICENSE file in root directory.
2 // Copyright(c) 2015 Intel Corporation. All Rights Reserved.
3 
4 #pragma once
5 
6 #include "types.h"
7 #include "core/streaming.h"
8 #include "callback-invocation.h"
9 
10 
11 namespace librealsense
12 {
13  struct frame_additional_data;
14 
16  {
17  public:
19 
20  virtual frame_interface* alloc_and_track(const size_t size, const frame_additional_data& additional_data, bool requires_memory) = 0;
21 
22  virtual std::shared_ptr<metadata_parser_map> get_md_parsers() const = 0;
23 
24  virtual void flush() = 0;
25 
27  virtual void unpublish_frame(frame_interface* frame) = 0;
28  virtual void keep_frame(frame_interface* frame) = 0;
29  virtual ~archive_interface() = default;
30  };
31 
32  std::shared_ptr<archive_interface> make_archive(rs2_extension type,
33  std::atomic<uint32_t>* in_max_frame_queue_size,
34  std::shared_ptr<platform::time_service> ts,
35  std::shared_ptr<metadata_parser_map> parsers);
36 
37 }
librealsense
Definition: calibration-model.h:9
streaming.h
rs2_extension
rs2_extension
Specifies advanced interfaces (capabilities) objects may implement.
Definition: rs_types.h:166
librealsense::archive_interface::get_md_parsers
virtual std::shared_ptr< metadata_parser_map > get_md_parsers() const =0
librealsense::archive_interface::~archive_interface
virtual ~archive_interface()=default
librealsense::frame_interface
Definition: frame.h:111
librealsense::sensor_part
Definition: frame.h:99
librealsense::callback_invocation_holder
Definition: callback-invocation.h:22
type
GLenum type
Definition: glad/glad/glad.h:135
size
GLsizeiptr size
Definition: glad/glad/glad.h:2734
librealsense::archive_interface::publish_frame
virtual frame_interface * publish_frame(frame_interface *frame)=0
librealsense::archive_interface
Definition: archive.h:15
librealsense::archive_interface::flush
virtual void flush()=0
librealsense::make_archive
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)
Definition: archive.cpp:10
librealsense::archive_interface::alloc_and_track
virtual frame_interface * alloc_and_track(const size_t size, const frame_additional_data &additional_data, bool requires_memory)=0
librealsense::archive_interface::keep_frame
virtual void keep_frame(frame_interface *frame)=0
librealsense::frame
Definition: frame.h:187
librealsense::frame_additional_data
Definition: frame.h:56
librealsense::archive_interface::unpublish_frame
virtual void unpublish_frame(frame_interface *frame)=0
librealsense::archive_interface::begin_callback
virtual callback_invocation_holder begin_callback()=0
types.h
callback-invocation.h


librealsense2
Author(s): LibRealSense ROS Team
autogenerated on Thu Dec 22 2022 03:13:13