adsd3500_mode_selector.h
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 #ifndef ADSD3500_MODE_SELECTOR
33 #define ADSD3500_MODE_SELECTOR
34 
36 
39 
40 #include <map>
41 
42 namespace aditof {
43 
45  public:
47  ~Adsd3500ModeSelector() = default;
48 
49  //functions to set which table configuration to use
50  aditof::Status setConfiguration(const std::string &configuration);
51 
53  std::vector<DepthSensorModeDetails> &m_depthSensorModeDetails);
54 
55  //populate table with hardcoded values depending on input
57  getConfigurationTable(DepthSensorModeDetails &configurationTable);
58 
59  //this function should update the table with driver details
62 
63  //Functions used to set mode, number of bits, pixel format, etc
64  aditof::Status setControl(const std::string &control,
65  const std::string &value);
67 
68  private:
70  std::vector<std::string> m_availableConfigurations;
71  std::map<std::string, std::string> m_controls;
72  std::vector<aditof::DepthSensorModeDetails> m_tableInUse;
73 };
74 } // namespace aditof
75 
76 #endif
aditof::Adsd3500ModeSelector::m_configuration
std::string m_configuration
Definition: adsd3500_mode_selector.h:69
aditof::Adsd3500ModeSelector::setConfiguration
aditof::Status setConfiguration(const std::string &configuration)
Definition: adsd3500_mode_selector.cpp:55
aditof::Adsd3500ModeSelector::getAvailableModeDetails
aditof::Status getAvailableModeDetails(std::vector< DepthSensorModeDetails > &m_depthSensorModeDetails)
Definition: adsd3500_mode_selector.cpp:66
camera_definitions.h
string
GLsizei const GLchar *const * string
Definition: glcorearb.h:3083
driver_configuration_table.h
aditof::Adsd3500ModeSelector::getConfigurationTable
aditof::Status getConfigurationTable(DepthSensorModeDetails &configurationTable)
Definition: adsd3500_mode_selector.cpp:86
aditof::Adsd3500ModeSelector::Adsd3500ModeSelector
Adsd3500ModeSelector()
Definition: adsd3500_mode_selector.cpp:35
aditof::Adsd3500ModeSelector::m_tableInUse
std::vector< aditof::DepthSensorModeDetails > m_tableInUse
Definition: adsd3500_mode_selector.h:72
aditof
Namespace aditof.
Definition: adsd_errs.h:40
aditof::Adsd3500ModeSelector::updateConfigurationTable
aditof::Status updateConfigurationTable(DepthSensorModeDetails &configurationTable)
Definition: adsd3500_mode_selector.cpp:122
aditof::Adsd3500ModeSelector
Definition: adsd3500_mode_selector.h:44
aditof::Adsd3500ModeSelector::m_availableConfigurations
std::vector< std::string > m_availableConfigurations
Definition: adsd3500_mode_selector.h:70
aditof::Status
Status
Status of any operation that the TOF sdk performs.
Definition: status_definitions.h:48
aditof::DepthSensorModeDetails
Describes the type of entire frame that a depth sensor can capture and transmit.
Definition: sensor_definitions.h:120
aditof::Adsd3500ModeSelector::getControl
aditof::Status getControl(const std::string &control, std::string &value)
Definition: adsd3500_mode_selector.cpp:257
status_definitions.h
aditof::Adsd3500ModeSelector::m_controls
std::map< std::string, std::string > m_controls
Definition: adsd3500_mode_selector.h:71
value
GLsizei const GLfloat * value
Definition: glcorearb.h:3093
aditof::Adsd3500ModeSelector::setControl
aditof::Status setControl(const std::string &control, const std::string &value)
Definition: adsd3500_mode_selector.cpp:232
aditof::Adsd3500ModeSelector::~Adsd3500ModeSelector
~Adsd3500ModeSelector()=default


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