frame.cpp
Go to the documentation of this file.
1 /*
2  * BSD 3-Clause License
3  *
4  * Copyright (c) 2019, Analog Devices, Inc.
5  * All rights reserved.
6  *
7  * Redistribution and use in source and binary forms, with or without
8  * modification, are permitted provided that the following conditions are met:
9  *
10  * 1. Redistributions of source code must retain the above copyright notice, this
11  * list of conditions and the following disclaimer.
12  *
13  * 2. Redistributions in binary form must reproduce the above copyright notice,
14  * this list of conditions and the following disclaimer in the documentation
15  * and/or other materials provided with the distribution.
16  *
17  * 3. Neither the name of the copyright holder nor the names of its
18  * contributors may be used to endorse or promote products derived from
19  * this software without specific prior written permission.
20  *
21  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
22  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
23  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
24  * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
25  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
26  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
27  * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
28  * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
29  * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31  */
32 
33 #include "frame_impl.h"
34 #include <aditof/frame.h>
35 #include <memory>
36 
37 namespace aditof {
38 
39 Frame::Frame() : m_impl(std::make_unique<FrameImpl>()) {}
40 
41 Frame::~Frame() = default;
42 
43 Frame::Frame(Frame &&) noexcept = default;
44 
45 Frame &Frame::operator=(Frame &&) noexcept = default;
46 
48  : m_impl(std::make_unique<FrameImpl>(*op.m_impl)) {}
49 
51  if (this != &op) {
52  m_impl = std::make_unique<FrameImpl>(*op.m_impl);
53  }
54  return *this;
55 }
56 
58  return m_impl->setDetails(details);
59 }
60 
62  return m_impl->getDetails(details);
63 }
64 
66  FrameDataDetails &details) const {
67  return m_impl->getDataDetails(dataType, details);
68 }
69 
70 Status Frame::getData(const std::string &dataType, uint16_t **dataPtr) {
71  return m_impl->getData(dataType, dataPtr);
72 }
73 
75  return m_impl->getMetadataStruct(metadata);
76 }
77 
78 } // namespace aditof
benchmarks.python.py_benchmark.const
const
Definition: py_benchmark.py:14
benchmarks.util.result_uploader.metadata
def metadata
Definition: result_uploader.py:97
string
GLsizei const GLchar *const * string
Definition: glcorearb.h:3083
benchmarks.python.py_benchmark.default
default
Definition: py_benchmark.py:14
aditof::FrameDetails
Describes the properties of a frame.
Definition: frame_definitions.h:93
aditof::Metadata
Contains all of the metadata components.
Definition: frame_definitions.h:147
aditof
Namespace aditof.
Definition: adsd_errs.h:40
aditof::Frame::~Frame
SDK_API ~Frame()
Destructor.
aditof::Frame::setDetails
SDK_API Status setDetails(const FrameDetails &details)
Configures the frame with the given details.
Definition: frame.cpp:57
aditof::FrameDataDetails
Describes the properties of a data that embedded within the frame.
Definition: frame_definitions.h:48
aditof::Frame::getData
SDK_API Status getData(const std::string &dataType, uint16_t **dataPtr)
Gets the address where the specified data is being stored.
Definition: frame.cpp:70
aditof::Frame::getDataDetails
SDK_API Status getDataDetails(const std::string &dataType, FrameDataDetails &details) const
Gets details of a type of data within the frame.
Definition: frame.cpp:65
frame.h
aditof::Status
Status
Status of any operation that the TOF sdk performs.
Definition: status_definitions.h:48
aditof::Frame::operator=
SDK_API Frame & operator=(const Frame &op)
Copy assignment.
Definition: frame.cpp:50
aditof::Frame::getDetails
SDK_API Status getDetails(FrameDetails &details) const
Gets the current details of the frame.
Definition: frame.cpp:61
std
aditof::Frame::getMetadataStruct
virtual SDK_API Status getMetadataStruct(Metadata &metadata) const
Extracts the metadata content and returns a struct with values.
Definition: frame.cpp:74
FrameImpl
Definition: frame_impl.h:43
frame_impl.h
aditof::Frame
Frame of a camera.
Definition: frame.h:50
aditof::Frame::Frame
SDK_API Frame()
Constructor.
Definition: frame.cpp:39
aditof::Frame::m_impl
std::unique_ptr< FrameImpl > m_impl
Definition: frame.h:121


libaditof
Author(s):
autogenerated on Wed May 21 2025 02:06:51