diff --git a/.clang-format b/.clang-format new file mode 100644 index 00000000..815357ef --- /dev/null +++ b/.clang-format @@ -0,0 +1,112 @@ +--- +BasedOnStyle: LLVM +IndentWidth: 4 +--- +Language: Cpp +AccessModifierOffset: -2 +AlignAfterOpenBracket: Align +AlignConsecutiveAssignments: false +AlignConsecutiveDeclarations: false +AlignEscapedNewlines: Right +AlignOperands: true +AlignTrailingComments: true +AllowAllParametersOfDeclarationOnNextLine: true +AllowShortBlocksOnASingleLine: false +AllowShortCaseLabelsOnASingleLine: false +AllowShortFunctionsOnASingleLine: All +AllowShortIfStatementsOnASingleLine: false +AllowShortLoopsOnASingleLine: false +AlwaysBreakAfterDefinitionReturnType: None +AlwaysBreakAfterReturnType: None +AlwaysBreakBeforeMultilineStrings: false +AlwaysBreakTemplateDeclarations: true +BinPackArguments: true +BinPackParameters: true +BraceWrapping: + AfterClass: false + AfterControlStatement: false + AfterEnum: false + AfterFunction: false + AfterNamespace: false + AfterObjCDeclaration: false + AfterStruct: false + AfterUnion: false + AfterExternBlock: false + BeforeCatch: false + BeforeElse: false + IndentBraces: false + SplitEmptyFunction: true + SplitEmptyRecord: true + SplitEmptyNamespace: true +BreakBeforeBinaryOperators: None +BreakBeforeBraces: Attach +BreakBeforeInheritanceComma: false +BreakBeforeTernaryOperators: true +BreakConstructorInitializersBeforeComma: false +BreakConstructorInitializers: BeforeColon +BreakAfterJavaFieldAnnotations: false +BreakStringLiterals: true +ColumnLimit: 80 +CommentPragmas: '^ IWYU pragma:' +CompactNamespaces: false +ConstructorInitializerAllOnOneLineOrOnePerLine: false +ConstructorInitializerIndentWidth: 4 +ContinuationIndentWidth: 4 +Cpp11BracedListStyle: true +DerivePointerAlignment: false +DisableFormat: false +ExperimentalAutoDetectBinPacking: false +FixNamespaceComments: true +ForEachMacros: + - foreach + - Q_FOREACH + - BOOST_FOREACH +IncludeBlocks: Preserve +IncludeCategories: + - Regex: '^"(llvm|llvm-c|clang|clang-c)/' + Priority: 2 + - Regex: '^(<|"(gtest|gmock|isl|json)/)' + Priority: 3 + - Regex: '.*' + Priority: 1 +IncludeIsMainRegex: '(Test)?$' +IndentCaseLabels: false +IndentPPDirectives: None +IndentWidth: 4 +IndentWrappedFunctionNames: false +JavaScriptQuotes: Leave +JavaScriptWrapImports: true +KeepEmptyLinesAtTheStartOfBlocks: true +MacroBlockBegin: '' +MacroBlockEnd: '' +MaxEmptyLinesToKeep: 1 +NamespaceIndentation: None +ObjCBlockIndentWidth: 4 +ObjCSpaceAfterProperty: false +ObjCSpaceBeforeProtocolList: true +PenaltyBreakAssignment: 2 +PenaltyBreakBeforeFirstCallParameter: 19 +PenaltyBreakComment: 300 +PenaltyBreakFirstLessLess: 120 +PenaltyBreakString: 1000 +PenaltyExcessCharacter: 1000000 +PenaltyReturnTypeOnItsOwnLine: 60 +PointerAlignment: Right +ReflowComments: false +SortIncludes: true +SortUsingDeclarations: true +SpaceAfterCStyleCast: false +SpaceAfterTemplateKeyword: true +SpaceBeforeAssignmentOperators: true +SpaceBeforeParens: ControlStatements +SpaceInEmptyParentheses: false +SpacesBeforeTrailingComments: 1 +SpacesInAngles: false +SpacesInContainerLiterals: true +SpacesInCStyleCastParentheses: false +SpacesInParentheses: false +SpacesInSquareBrackets: false +Standard: Cpp11 +TabWidth: 8 +UseTab: Never +... diff --git a/.clangformatignore b/.clangformatignore new file mode 100644 index 00000000..a48c6209 --- /dev/null +++ b/.clangformatignore @@ -0,0 +1,11 @@ +apps/uvc-app/include +apps/uvc-app/lib +bindings/python/pybind11 +dependencies/third-party +drivers/ +examples/data_collect/third_party +examples/data_collect/adi +examples/tof-viewer/external +examples/tof-viewer/include/stb_image.h +examples/tof-viewer/include/linmath.h +sdk/src/cameras/itof-camera/tofi diff --git a/.gitignore b/.gitignore new file mode 100644 index 00000000..2f8eefe6 --- /dev/null +++ b/.gitignore @@ -0,0 +1,8 @@ +build/ + +sdk/include/aditof/version.h + +*deps/ +*.temp/ +.vscode/ +.vs/ diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 00000000..503f75ba --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,163 @@ +cmake_minimum_required(VERSION 3.0) +project(adi_tof_project) + +####################### Disable In-source builds ############################## +if( ${CMAKE_SOURCE_DIR} STREQUAL ${CMAKE_BINARY_DIR} ) + message(FATAL_ERROR "In-source builds are not allowed. \ + Consider making a separate build folder and run cmake \ + from there using this command: + cmake ${CMAKE_SOURCE_DIR}") +endif() + +############################### Version ####################################### +set(ADITOF_VERSION_MAJOR 5) +set(ADITOF_VERSION_MINOR 0) +set(ADITOF_VERSION_PATCH 0) + +set(VERSION "${ADITOF_VERSION_MAJOR}.${ADITOF_VERSION_MINOR}.${ADITOF_VERSION_PATCH}") + +############################### Options ####################################### +option(WITH_DOC "Build documentation?" OFF) +option(WITH_NETWORK "Build network interface?" ON) +option(WITH_OFFLINE "Build offline interface?" OFF) +option(WITH_GLOG_DEPENDENCY "Build with GLOG dependency to be used for logging?" ON) +option(CI_BUILD "Build for CI" OFF) + +######################### Target based Options ################################ +option(NXP "Set to ON when building on NXP" OFF) +option(NVIDIA "Set to ON when building on NVIDIA" OFF) +option(WITH_PROTOBUF_DEPENDENCY "Build with PROTOBUF dependency?" ON) +option(USE_DEPTH_COMPUTE_OPENSOURCE "Use an open source implementation?" OFF) + +################################## Git ######################################## +include(FindGit OPTIONAL) +if (GIT_FOUND) + execute_process( + COMMAND ${GIT_EXECUTABLE} rev-parse --show-toplevel + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} + OUTPUT_VARIABLE ADITOFSDK_GIT_REPO + OUTPUT_STRIP_TRAILING_WHITESPACE + ERROR_QUIET + ) + + if ("${ADITOFSDK_GIT_REPO}" STREQUAL "${CMAKE_CURRENT_SOURCE_DIR}") + execute_process( + COMMAND ${GIT_EXECUTABLE} rev-parse --short HEAD + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} + OUTPUT_VARIABLE ADITOFSDK_GIT_COMMIT + OUTPUT_STRIP_TRAILING_WHITESPACE + ) + execute_process( + COMMAND ${GIT_EXECUTABLE} rev-parse --abbrev-ref HEAD + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} + OUTPUT_VARIABLE ADITOFSDK_GIT_BRANCH + OUTPUT_STRIP_TRAILING_WHITESPACE + ) + endif() +endif() + +add_definitions(-DADITOFSDK_GIT_COMMIT="${ADITOFSDK_GIT_COMMIT}") +add_definitions(-DADITOFSDK_GIT_BRANCH="${ADITOFSDK_GIT_BRANCH}") + +############################## Rest of cmake ################################## + +# Check whether we configure things for remote or we're on target +set(SELECTED_PLATFORMS 0) +set(ALL_PLATFORMS NXP;NVIDIA) +foreach(platform IN LISTS ALL_PLATFORMS) + if(${platform}) + math(EXPR SELECTED_PLATFORMS "${SELECTED_PLATFORMS}+1") + endif() +endforeach() + +set(ON_TARGET FALSE) +if(${SELECTED_PLATFORMS} GREATER 1) + message(FATAL_ERROR "More than one platform was selected. \nPlease select a single platform. CMake will exit.") +elseif(${SELECTED_PLATFORMS} EQUAL 1) + add_definitions(-DTARGET) + set(ON_TARGET TRUE) +endif() + +if(NOT ON_TARGET AND USE_DEPTH_COMPUTE_OPENSOURCE) + message (STATUS "USE_DEPTH_COMPUTE_OPENSOURCE is not used on host") +endif() + +if(CI_BUILD) + set(USE_DEPTH_COMPUTE_OPENSOURCE ON) +endif() + +if (WITH_NETWORK) + add_definitions(-DHAS_NETWORK) +endif() + +set(RESOURCES_DIR "${CMAKE_BINARY_DIR}/resources") +make_directory(${RESOURCES_DIR}) + +if (WITH_OFFLINE) + add_definitions(-DHAS_OFFLINE) + + set(RESOURCES_OFFLINE_DIR "${RESOURCES_DIR}/offline") + make_directory(${RESOURCES_OFFLINE_DIR}) + + set(MODE_FILE "lr-native.bin" "sr-native.bin" "lr-qnative.bin" "sr-qnative.bin" "lr-mixed.bin" "sr-mixed.bin") + message("Downloading raw frames into ${RESOURCES_OFFLINE_DIR}") + foreach(MODE IN LISTS MODE_FILE) + set(MODE_URL "swdownloads.analog.com/cse/aditof/resources/itof/frames/${MODE}") + set(MODE_PATH "${RESOURCES_OFFLINE_DIR}/${MODE}") + + if (NOT EXISTS ${MODE_PATH}) + file(DOWNLOAD "${MODE_URL}" "${MODE_PATH}") + endif() + endforeach() + + if (ON_TARGET) + make_directory("${RESOURCES_OFFLINE_DIR}/adsd3500_raw") + + message("Downloading raw frames into ${RESOURCES_OFFLINE_DIR}/adsd3500_raw") + foreach(MODE IN LISTS MODE_FILE) + set(MODE_URL "swdownloads.analog.com/cse/aditof/resources/itof/offline/adsd3500_raw/${MODE}") + set(MODE_PATH "${RESOURCES_OFFLINE_DIR}/adsd3500_raw/${MODE}") + + if (NOT EXISTS ${MODE_PATH}) + file(DOWNLOAD "${MODE_URL}" "${MODE_PATH}") + endif() + endforeach() + endif() +endif() + +if(WITH_GLOG_DEPENDENCY) + add_definitions(-DUSE_GLOG) +endif() + +if(NOT WITH_PROTOBUF_DEPENDENCY) + if(NOT ON_TARGET) + message(FATAL_ERROR "SDK can be built without protobuf only on target builds!") + endif() +else() + add_definitions(-DUSE_PROTOBUF) +endif() + +if(${ON_TARGET}) + if(USE_DEPTH_COMPUTE_OPENSOURCE) + set(LIBTOFI_LIBDIR_PATH "${CMAKE_BINARY_DIR}/sdk/common/adi/depth-compute-opensource") + else() + set(LIBTOFI_LIBDIR_PATH "${CMAKE_SOURCE_DIR}/../libs") + endif() +endif() + +set(CONFIG_DIR_NAME "config") +add_definitions(-DCONFIG_DIR_NAME="${CONFIG_DIR_NAME}") +add_definitions(-DRESOURCES="${RESOURCES_DIR}") + +add_subdirectory(dependencies) +add_subdirectory(sdk) + +if (WITH_DOC) + add_subdirectory(doc) +endif() + +############################### Installer ####################################### +configure_file(cmake/aditof-setup.iss.cmakein ${CMAKE_CURRENT_BINARY_DIR}/aditof-setup.iss @ONLY) + +############################### Version ####################################### +configure_file(cmake/version.h.cmakein ${CMAKE_SOURCE_DIR}/sdk/include/aditof/version.h @ONLY) diff --git a/LICENSE b/LICENSE new file mode 100644 index 00000000..7b6b4fac --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2021 Analog Devices, Inc. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/README.md b/README.md new file mode 100644 index 00000000..0fba43ed --- /dev/null +++ b/README.md @@ -0,0 +1,70 @@ +# Analog Devices 3D ToF software suite + +## Overview +The **ADI ToF SDK** is a cross platform library for the Analog Devices depth cameras based on the ADSD3100 TOF Signal Processor. It provides support for data processing on the embedded processor platform as well as for USB, Ethernet, Offline or Wi-Fi to connect to a host computer. This flexibility enables evaluation across a wide range of use cases and environments. + +The SDK provides an API to control the ToF camera, AB stream and depth data. Windows support are built into the SDK as well as sample code and wrappers for various languages including Python and C/C++. + +License : [![License](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE) +Platform details : [![Hardware](https://img.shields.io/badge/hardware-wiki-green.svg)]() + +## Supported Host Platforms + +For more details on building the SDK on a host platform please check the **User Guide** specified below:. + +| Operating System | Documentation | GitHub main status | Downloads | +| --------- | ----------- | ----------- | ----------- | +| Windows | [Build Instructions](scripts/windows) | [![Build status](https://dev.azure.com/AnalogDevices/3DToF-rework/_apis/build/status/analogdevicesinc.ToF?branchName=main)](https://dev.azure.com/AnalogDevices/3DToF-rework/_build?view=runs&branchFilter=3310) | [![ToF evaluation kit installer](https://img.shields.io/badge/release-ToF_evaluation_kit_installer-blue.svg)](https://github.com/analogdevicesinc/ToF/releases/latest) | +| Linux | [Build Instructions](doc/itof/linux_build_instructions.md) | [![Build status](https://dev.azure.com/AnalogDevices/3DToF-rework/_apis/build/status/analogdevicesinc.ToF?branchName=main)](https://dev.azure.com/AnalogDevices/3DToF-rework/_build?view=runs&branchFilter=3310) | [![ToF evaluation kit installer](https://img.shields.io/badge/release-ToF_evaluation_kit_installer-blue.svg)](https://github.com/analogdevicesinc/ToF/releases/latest) | + +### Requirements + +Host Platform: + +* Windows 10 or +* Ubuntu 20.04 or +* Ubuntu 22.04 + +Other +* Python 3.10 + +## Supported Embedded Platforms + +For more details on building the SDK on an embedded platform please check the **User Guide** specified below: +### ITOF camera +| Operating system | Evaluation boards | Documentation | GitHub main status | +| --------- | ----------- | ----------- | ----------- | +| NXP | [EVAL-ADTF3175D-NXZ](https://wiki.analog.com/resources/eval/user-guides/eval-adtf3175d-nxz) | [Build instructions](doc/itof/nxp_build_instructions.md) | [![Build status](https://dev.azure.com/AnalogDevices/3DToF-rework/_apis/build/status/analogdevicesinc.ToF?branchName=main)](https://dev.azure.com/AnalogDevices/3DToF-rework/_build?view=runs&branchFilter=3310) | + +[How to write the SD card image onto the SD card?](doc/sdcard_burn.md) + +## SDK Documentation + +From an architectural point of view, the SDK consists of two layers. One layer is the high level API that allows clients to easily grab a camera object, configure it and request frames. The other layer is the low level API which exposes the interface through which low level operations can be made to the camera hardware. + +For more details about the SDK check the links below: + +[Software stack documentation](sdk/readme.md) + +[API Doxygen documentation](https://analogdevicesinc.github.io/ToF/) + +[Building and installing the SDK](cmake) + +## SDK Examples +The list of examples can be found at [this link.](https://github.com/analogdevicesinc/ToF?tab=readme-ov-file#sdk-examples) + +## Directory Structure +| Directory | Description | +| --------- | ----------- | +| ci | Useful scripts for continuous integration | +| cmake | Helper files for cmake | +| dependencies | Contains third-party and owned libraries | +| doc | Documentation | +| sdk | SDK source code | + +--- +**Known issues** + +On a PC where Linux kernel version 5.13 is installed, a USB connected camera cannot be detected. The v4l device name that we expect is not being set properly. However it works for older and newer versions. + +--- diff --git a/adsd__errs_8h_source.html b/adsd__errs_8h_source.html new file mode 100644 index 00000000..6802f9f0 --- /dev/null +++ b/adsd__errs_8h_source.html @@ -0,0 +1,124 @@ + + +
+ + + + +
+ Time-of-Flight-SDK
+
+ |
+
+ Time-of-Flight-SDK
+
+ |
+
▼Naditof | Namespace aditof |
CADSDErrors | Error codes from the ADSD3500, ADSD3100, ADSD3030 Usage: Included with aditof/camera.h For example: ADSDErrors err; LOG(INFO) << err.GetStringADSD3500(0x0001); |
CCamera | Manipulates the underlying camera system |
CCameraDetails | Describes the properties of a camera |
CDepthSensorInterface | Provides access to the low level functionality of the camera sensor. This includes sensor configuration as well as analog front end(AFE) configuration |
CDepthSensorModeDetails | Describes the type of entire frame that a depth sensor can capture and transmit |
CDriverConfiguration | Describes the configuration of the used driver |
CFrame | Frame of a camera |
CFrameDataDetails | Describes the properties of a data that embedded within the frame |
CFrameDetails | Describes the properties of a frame |
CFrameHandler | Handles operations on a frame such as saving it to file and creating a new frame with content read from file |
CIntrinsicParameters | Describes the intrinsic parameters of a camera |
CMetadata | Contains all of the metadata components |
CPoint3I_sdk | Holds the xyz values of a frame |
CSensorDetails | Provides details about the device |
CSensorEnumeratorFactory | Provides the means to construct different types of sensors enumerators. Based on the connection type (on target, USB, Network), different enumerators need to be used |
CSensorEnumeratorInterface | Can search for sensors and retrieve sensors by category |
CSystem | The TOF system that manages the cameras |
+ Time-of-Flight-SDK
+
+ |
+
+ Time-of-Flight-SDK
+
+ |
+
+ Time-of-Flight-SDK
+
+ |
+
This is the complete list of members for aditof::ADSDErrors, including all inherited members.
+
+ Time-of-Flight-SDK
+
+ |
+
Error codes from the ADSD3500, ADSD3100, ADSD3030 Usage: Included with aditof/camera.h For example: ADSDErrors err; LOG(INFO) << err.GetStringADSD3500(0x0001);. + More...
+ +#include <adsd_errs.h>
+Public Member Functions | |
std::string | GetStringADSD3500 (uint16_t value) |
Returns a string for a given target (adsdType) and error code for the ADSD3500. More... | |
std::string | GetStringADSD3100 (uint16_t value) |
Returns a string for a given target (adsdType) and error code for the ADSD3100. More... | |
std::string | GetStringADSD3030 (uint16_t value) |
Returns a string for a given target (adsdType) and error code for the ADSD3030. More... | |
+Public Attributes | |
+const uint16_t | ADSD3500_STATUS_INVALID_MODE = 0x0001 |
Mode selected is invalid. | |
+const uint16_t | ADSD3500_STATUS_INVALID_JBLF_FILTER_SIZE = 0x0002 |
The JBLF filter size speficied is incorrect. | |
+const uint16_t | ADSD3500_STATUS_UNSUPPORTED_CMD = 0x0003 |
An unsupported command was sent to the ASDD3500. | |
+const uint16_t | ADSD3500_STATUS_INVALID_MEMORY_REGION = 0x0004 |
TODO. | |
+const uint16_t | ADSD3500_STATUS_INVALID_FIRMWARE_CRC = 0x0005 |
The ADSD3500 firmware CRC check failed. | |
+const uint16_t | ADSD3500_STATUS_INVALID_IMAGER = 0x0006 |
The imager firmware is not valid. | |
+const uint16_t | ADSD3500_STATUS_INVALID_CCB = 0x0007 |
The imager CCB file is not valid. | |
+const uint16_t | ADSD3500_STATUS_FLASH_HEADER_PARSE_ERROR = 0x0008 |
Flash update error. | |
+const uint16_t | ADSD3500_STATUS_FLASH_FILE_PARSE_ERROR = 0x0009 |
Flash update error. | |
+const uint16_t | ADSD3500_STATUS_SPIM_ERROR = 0x000A |
SPI Master error occured, which this impacts the ADSD3500 - image communication. | |
+const uint16_t | ADSD3500_STATUS_INVALID_CHIPID = 0x000B |
The imager chip ID is invalid. | |
const uint16_t | ADSD3500_STATUS_IMAGER_COMMUNICATION_ERROR = 0x000C |
SPI Master error occured during communication between the ASDSD3500 and the imager. More... | |
+const uint16_t | ADSD3500_STATUS_IMAGER_BOOT_FAILURE = 0x000D |
Unable to boot the imager. | |
+const uint16_t | ADSD3500_STATUS_IMAGER_ERROR = 0x0010 |
The imager reported an error. | |
+const uint16_t | ADSD3500_STATUS_TIMEOUT_ERROR = 0x0011 |
This is when timer is expired but ADSD3500 is not able to send out frame due to some error. | |
+const uint16_t | ADSD3500_STATUS_DYNAMIC_MODE_SWITCHING_NOT_ENABLED = 0x0013 |
Dynamic mode switching is being set, but it is not enabled. | |
+const uint16_t | ADSD3500_STATUS_INVALID_DYNAMIC_MODE_COMPOSITIONS = 0x0014 |
The selected dyanamic mode configuration is not valid. | |
+const uint16_t | ADSD3500_STATUS_INVALID_PHASE_INVALID_VALUE = 0x0015 |
An incorrect phase invalid value specified. | |
+const uint16_t | ADSD3500_STATUS_FIRMWARE_UPDATE_COMPLETE = 0x000E |
Firmware update is complete. | |
+const uint16_t | ADSD3500_STATUS_NVM_WRITE_COMPLETE = 0x000F |
NVM update is complete. | |
+const uint16_t | ADSD3100_ERR_MODE_USECASE = 0x0001 |
Invalid mode selection. Imager error codes read via "Get Imager Error Code" (0x0038) command Note, this only valid if "Get Status" (0x0020) reports a value of "ADSD3500_STATUS_IMAGER_ERROR" (0x0010) | |
+const uint16_t | ADSD3100_ERR_MODE_MODE_DRIVER = 0x0002 |
Invalid LD mode selection. Imager error codes read via "Get Imager Error Code" (0x0038) command Note, this only valid if "Get Status" (0x0020) reports a value of "ADSD3500_STATUS_IMAGER_ERROR" (0x0010) | |
+const uint16_t | ADSD3100_ERR_PLLLOCK_LOCK1 = 0x0004 |
PLLLOCK error location 1. Imager error codes read via "Get Imager Error Code" (0x0038) command Note, this only valid if "Get Status" (0x0020) reports a value of "ADSD3500_STATUS_IMAGER_ERROR" (0x0010) | |
const uint16_t | ADSD3100_ERR_PLLLOCK_LOCK2 |
PLLLOCK error location 2. Imager error codes read via "Get Imager Error Code" (0x0038) command Note, this only valid if "Get Status" (0x0020) reports a value of "ADSD3500_STATUS_IMAGER_ERROR" (0x0010) More... | |
const uint16_t | ADSD3100_ERR_PLLLOCK_LOCK3 |
PLLLOCK error location 3. Imager error codes read via "Get Imager Error Code" (0x0038) command Note, this only valid if "Get Status" (0x0020) reports a value of "ADSD3500_STATUS_IMAGER_ERROR" (0x0010) More... | |
+const uint16_t | ADSD3100_ERR_OVERHEAT_IMAGER = 0x0010 |
Imager sensor overheat. Imager error codes read via "Get Imager Error Code" (0x0038) command Note, this only valid if "Get Status" (0x0020) reports a value of "ADSD3500_STATUS_IMAGER_ERROR" (0x0010) | |
+const uint16_t | ADSD3100_ERR_OVERHEAT_LD = 0x0020 |
Laser driver overheat. Imager error codes read via "Get Imager Error Code" (0x0038) command Note, this only valid if "Get Status" (0x0020) reports a value of "ADSD3500_STATUS_IMAGER_ERROR" (0x0010) | |
+const uint16_t | ADSD3100_ERR_LASER_CHIPID = 0x0040 |
Laser driver invalid chip ID. Imager error codes read via "Get Imager Error Code" (0x0038) command Note, this only valid if "Get Status" (0x0020) reports a value of "ADSD3500_STATUS_IMAGER_ERROR" (0x0010) | |
+const uint16_t | ADSD3100_ERR_LASER_LPS = 0x0080 |
Corrupted laser driver data. Imager error codes read via "Get Imager Error Code" (0x0038) command Note, this only valid if "Get Status" (0x0020) reports a value of "ADSD3500_STATUS_IMAGER_ERROR" (0x0010) | |
+const uint16_t | ADSD3100_ERR_LASER_NO_DIFFUSER = 0x0100 |
Laser diffuser problem. Imager error codes read via "Get Imager Error Code" (0x0038) command Note, this only valid if "Get Status" (0x0020) reports a value of "ADSD3500_STATUS_IMAGER_ERROR" (0x0010) | |
+const uint16_t | ADSD3100_ERR_LASER_SHORT = 0x0140 |
Laser driver shorted to GND. Imager error codes read via "Get Imager Error Code" (0x0038) command Note, this only valid if "Get Status" (0x0020) reports a value of "ADSD3500_STATUS_IMAGER_ERROR" (0x0010) | |
+const uint16_t | ADSD3100_ERR_LVDS_HIGH_DC = 0x0180 |
Laser driver duty cycle too large. Imager error codes read via "Get Imager Error Code" (0x0038) command Note, this only valid if "Get Status" (0x0020) reports a value of "ADSD3500_STATUS_IMAGER_ERROR" (0x0010) | |
+const uint16_t | ADSD3100_ERR_LVDS_PULSE_LONG = 0x01C0 |
Laser driver active time too long. Imager error codes read via "Get Imager Error Code" (0x0038) command Note, this only valid if "Get Status" (0x0020) reports a value of "ADSD3500_STATUS_IMAGER_ERROR" (0x0010) | |
+const uint16_t | ADSD3100_ERR_LVDS_OPEN_SHORT = 0x0200 |
Laser driver input open or short detected. Imager error codes read via "Get Imager Error Code" (0x0038) command Note, this only valid if "Get Status" (0x0020) reports a value of "ADSD3500_STATUS_IMAGER_ERROR" (0x0010) | |
+const uint16_t | ADSD3100_ERR_LASER_LONG_LEN_ON = 0x0240 |
Laser driver enabled for too long of time. Imager error codes read via "Get Imager Error Code" (0x0038) command Note, this only valid if "Get Status" (0x0020) reports a value of "ADSD3500_STATUS_IMAGER_ERROR" (0x0010) | |
+const uint16_t | ADSD3100_ERR_LASER_SHORT_LEN_OFF = 0x0280 |
Laser driver disabled for too short of time. Imager error codes read via "Get Imager Error Code" (0x0038) command Note, this only valid if "Get Status" (0x0020) reports a value of "ADSD3500_STATUS_IMAGER_ERROR" (0x0010) | |
+const uint16_t | ADSD3100_ERR_LASER_LPS_READ = 0x02C0 |
Laser driver corrupted data. Imager error codes read via "Get Imager Error Code" (0x0038) command Note, this only valid if "Get Status" (0x0020) reports a value of "ADSD3500_STATUS_IMAGER_ERROR" (0x0010) | |
+const uint16_t | ADSD3100_ERR_LASER_VLD_LOW = 0x0300 |
Laser driver supply too low. Imager error codes read via "Get Imager Error Code" (0x0038) command Note, this only valid if "Get Status" (0x0020) reports a value of "ADSD3500_STATUS_IMAGER_ERROR" (0x0010) | |
+const uint16_t | ADSD3100_ERR_LASER_VLD_HIGH = 0x0340 |
Laser driver supply too high. Imager error codes read via "Get Imager Error Code" (0x0038) command Note, this only valid if "Get Status" (0x0020) reports a value of "ADSD3500_STATUS_IMAGER_ERROR" (0x0010) | |
Error codes from the ADSD3500, ADSD3100, ADSD3030 Usage: Included with aditof/camera.h For example: ADSDErrors err; LOG(INFO) << err.GetStringADSD3500(0x0001);.
+ +Definition at line 51 of file adsd_errs.h.
+
+
|
+ +inline | +
Returns a string for a given target (adsdType) and error code for the ADSD3030.
+[in] | value | - Error value |
Definition at line 159 of file adsd_errs.h.
+ +
+
|
+ +inline | +
Returns a string for a given target (adsdType) and error code for the ADSD3100.
+[in] | value | - Error value |
Definition at line 141 of file adsd_errs.h.
+ +
+
|
+ +inline | +
Returns a string for a given target (adsdType) and error code for the ADSD3500.
+[in] | value | - Error value |
Definition at line 123 of file adsd_errs.h.
+ +const uint16_t aditof::ADSDErrors::ADSD3100_ERR_PLLLOCK_LOCK2 | +
PLLLOCK error location 2. Imager error codes read via "Get Imager Error Code" (0x0038) command Note, this only valid if "Get Status" (0x0020) reports a value of "ADSD3500_STATUS_IMAGER_ERROR" (0x0010)
+ +Definition at line 274 of file adsd_errs.h.
+ +const uint16_t aditof::ADSDErrors::ADSD3100_ERR_PLLLOCK_LOCK3 | +
PLLLOCK error location 3. Imager error codes read via "Get Imager Error Code" (0x0038) command Note, this only valid if "Get Status" (0x0020) reports a value of "ADSD3500_STATUS_IMAGER_ERROR" (0x0010)
+ +Definition at line 281 of file adsd_errs.h.
+ +const uint16_t aditof::ADSDErrors::ADSD3500_STATUS_IMAGER_COMMUNICATION_ERROR = 0x000C | +
SPI Master error occured during communication between the ASDSD3500 and the imager.
+ +Definition at line 215 of file adsd_errs.h.
+ +
+ Time-of-Flight-SDK
+
+ |
+
This is the complete list of members for aditof::Camera, including all inherited members.
+adsd3500DisableCCBM(bool disable)=0 | aditof::Camera | pure virtual |
adsd3500GetABinvalidationThreshold(int &threshold)=0 | aditof::Camera | pure virtual |
adsd3500GetConfidenceThreshold(int &threshold)=0 | aditof::Camera | pure virtual |
adsd3500GetEnableMetadatainAB(uint16_t &value)=0 | aditof::Camera | pure virtual |
adsd3500GetFirmwareVersion(std::string &fwVersion, std::string &fwHash)=0 | aditof::Camera | pure virtual |
adsd3500GetFrameRate(uint16_t &fps)=0 | aditof::Camera | pure virtual |
adsd3500GetGenericTemplate(uint16_t reg, uint16_t &value)=0 | aditof::Camera | pure virtual |
adsd3500GetImagerErrorCode(uint16_t &errcode)=0 | aditof::Camera | pure virtual |
adsd3500GetJBLFExponentialTerm(uint16_t &value)=0 | aditof::Camera | pure virtual |
adsd3500GetJBLFfilterEnableState(bool &enabled)=0 | aditof::Camera | pure virtual |
adsd3500GetJBLFfilterSize(int &size)=0 | aditof::Camera | pure virtual |
adsd3500GetJBLFGaussianSigma(uint16_t &value)=0 | aditof::Camera | pure virtual |
adsd3500GetLaserTemperature(uint16_t &tmpValue)=0 | aditof::Camera | pure virtual |
adsd3500GetMIPIOutputSpeed(uint16_t &speed)=0 | aditof::Camera | pure virtual |
adsd3500GetRadialThresholdMax(int &threshold)=0 | aditof::Camera | pure virtual |
adsd3500GetRadialThresholdMin(int &threshold)=0 | aditof::Camera | pure virtual |
adsd3500GetSensorTemperature(uint16_t &tmpValue)=0 | aditof::Camera | pure virtual |
adsd3500GetStatus(int &chipStatus, int &imagerStatus)=0 | aditof::Camera | pure virtual |
adsd3500GetTemperatureCompensationStatus(uint16_t &value)=0 | aditof::Camera | pure virtual |
adsd3500GetVCSELDelay(uint16_t &delay)=0 | aditof::Camera | pure virtual |
adsd3500IsCCBMsupported(bool &supported)=0 | aditof::Camera | pure virtual |
adsd3500ResetIniParamsForMode(const uint16_t mode)=0 | aditof::Camera | pure virtual |
adsd3500SetABinvalidationThreshold(int threshold)=0 | aditof::Camera | pure virtual |
adsd3500SetConfidenceThreshold(int threshold)=0 | aditof::Camera | pure virtual |
adsd3500setEnableDynamicModeSwitching(bool enable)=0 | aditof::Camera | pure virtual |
adsd3500SetEnableEdgeConfidence(uint16_t value)=0 | aditof::Camera | pure virtual |
adsd3500SetEnableMetadatainAB(uint16_t value)=0 | aditof::Camera | pure virtual |
adsd3500SetEnablePhaseInvalidation(uint16_t value)=0 | aditof::Camera | pure virtual |
adsd3500SetEnableTemperatureCompensation(uint16_t value)=0 | aditof::Camera | pure virtual |
adsd3500SetFrameRate(uint16_t fps)=0 | aditof::Camera | pure virtual |
adsd3500SetGenericTemplate(uint16_t reg, uint16_t value)=0 | aditof::Camera | pure virtual |
adsd3500SetJBLFABThreshold(uint16_t threshold)=0 | aditof::Camera | pure virtual |
adsd3500SetJBLFExponentialTerm(uint16_t value)=0 | aditof::Camera | pure virtual |
adsd3500SetJBLFfilterEnableState(bool enable)=0 | aditof::Camera | pure virtual |
adsd3500SetJBLFfilterSize(int size)=0 | aditof::Camera | pure virtual |
adsd3500SetJBLFGaussianSigma(uint16_t value)=0 | aditof::Camera | pure virtual |
adsd3500SetJBLFMaxEdgeThreshold(uint16_t threshold)=0 | aditof::Camera | pure virtual |
adsd3500SetMIPIOutputSpeed(uint16_t speed)=0 | aditof::Camera | pure virtual |
adsd3500SetRadialThresholdMax(int threshold)=0 | aditof::Camera | pure virtual |
adsd3500SetRadialThresholdMin(int threshold)=0 | aditof::Camera | pure virtual |
adsd3500SetToggleMode(int mode)=0 | aditof::Camera | pure virtual |
adsd3500SetVCSELDelay(uint16_t delay)=0 | aditof::Camera | pure virtual |
adsd3500ToggleFsync()=0 | aditof::Camera | pure virtual |
adsd3500UpdateFirmware(const std::string &fwFilePath)=0 | aditof::Camera | pure virtual |
adsds3500setDynamicModeSwitchingSequence(const std::vector< std::pair< uint8_t, uint8_t >> &sequence)=0 | aditof::Camera | pure virtual |
dropFirstFrame(bool dropFrame)=0 | aditof::Camera | pure virtual |
enableDepthCompute(bool enable)=0 | aditof::Camera | pure virtual |
enableXYZframe(bool enable)=0 | aditof::Camera | pure virtual |
getAvailableControls(std::vector< std::string > &controls) const =0 | aditof::Camera | pure virtual |
getAvailableModes(std::vector< uint8_t > &availableModes) const =0 | aditof::Camera | pure virtual |
getControl(const std::string &control, std::string &value) const =0 | aditof::Camera | pure virtual |
getDetails(CameraDetails &details) const =0 | aditof::Camera | pure virtual |
getFrameProcessParams(std::map< std::string, std::string > ¶ms)=0 | aditof::Camera | pure virtual |
getImagerType(ImagerType &imagerType) const =0 | aditof::Camera | pure virtual |
getSensor()=0 | aditof::Camera | pure virtual |
initialize(const std::string &configFilepath={})=0 | aditof::Camera | pure virtual |
loadDepthParamsFromJsonFile(const std::string &pathFile)=0 | aditof::Camera | pure virtual |
normalizeABdata(aditof::Frame *frame, bool useLogScaling)=0 | aditof::Camera | pure virtual |
readSerialNumber(std::string &serialNumber, bool useCacheValue=false)=0 | aditof::Camera | pure virtual |
requestFrame(Frame *frame)=0 | aditof::Camera | pure virtual |
saveDepthParamsToJsonFile(const std::string &savePathFile)=0 | aditof::Camera | pure virtual |
saveModuleCCB(const std::string &filepath)=0 | aditof::Camera | pure virtual |
saveModuleCFG(const std::string &filepath) const =0 | aditof::Camera | pure virtual |
setControl(const std::string &control, const std::string &value)=0 | aditof::Camera | pure virtual |
setFrameProcessParams(std::map< std::string, std::string > ¶ms)=0 | aditof::Camera | pure virtual |
setMode(const uint8_t &mode)=0 | aditof::Camera | pure virtual |
setSensorConfiguration(const std::string &sensorConf)=0 | aditof::Camera | pure virtual |
start()=0 | aditof::Camera | pure virtual |
stop()=0 | aditof::Camera | pure virtual |
~Camera()=default | aditof::Camera | virtual |
+ Time-of-Flight-SDK
+
+ |
+
Manipulates the underlying camera system. + More...
+ +#include <camera.h>
+Public Member Functions | |
+virtual | ~Camera ()=default |
Destructor. | |
virtual Status | initialize (const std::string &configFilepath={})=0 |
Initialize the camera. This is required before performing any operation on the camera. More... | |
virtual Status | start ()=0 |
Start the camera. This starts the streaming of data from the camera. More... | |
virtual Status | stop ()=0 |
Stop the camera. This makes the camera to stop streaming. More... | |
virtual Status | setMode (const uint8_t &mode)=0 |
Puts the camera into the given mode. More... | |
virtual Status | getFrameProcessParams (std::map< std::string, std::string > ¶ms)=0 |
Get the Depth Compute Library ini parameters. More... | |
virtual Status | setFrameProcessParams (std::map< std::string, std::string > ¶ms)=0 |
Set the Depth Compute Library ini parameters. More... | |
virtual Status | getAvailableModes (std::vector< uint8_t > &availableModes) const =0 |
Returns all the modes that are supported by the camera. More... | |
virtual Status | requestFrame (Frame *frame)=0 |
Captures data from the camera and assigns it to the given frame. More... | |
virtual aditof::Status | normalizeABdata (aditof::Frame *frame, bool useLogScaling)=0 |
Scale AB image with logarithmic base 10. More... | |
virtual Status | getDetails (CameraDetails &details) const =0 |
Gets the current details of the camera. More... | |
virtual Status | getAvailableControls (std::vector< std::string > &controls) const =0 |
Gets the camera's list of controls. More... | |
virtual Status | setControl (const std::string &control, const std::string &value)=0 |
Sets a specific camera control. More... | |
virtual Status | getControl (const std::string &control, std::string &value) const =0 |
Gets the value of a specific camera control. More... | |
virtual std::shared_ptr< DepthSensorInterface > | getSensor ()=0 |
Gets the sensor of the camera. This gives direct access to low level configuration of the camera sensor. More... | |
virtual Status | enableXYZframe (bool enable)=0 |
Enable the generation of a XYZ frame. The XYZ frame can be enabled or disabled through .ini configuration file but if this method is explicitly called then it will override the option in the .ini file. By default XYZ frame is disabled. More... | |
virtual Status | saveModuleCFG (const std::string &filepath) const =0 |
Save the CFG content which is obtained from module memory to a given file path. More... | |
virtual Status | saveModuleCCB (const std::string &filepath)=0 |
Save the CCB content which is obtained from module memory to a given file path. More... | |
virtual Status | enableDepthCompute (bool enable)=0 |
Enable or disable the depth processing on the frames received from the sensor Must be called after getFrame() where the depth processing happens. More... | |
virtual Status | adsd3500UpdateFirmware (const std::string &fwFilePath)=0 |
Update the firmware of ADSD3500 with the content found in the specified file. More... | |
virtual Status | adsd3500SetToggleMode (int mode)=0 |
Enables or disables FSYNC toggle for ADSD3500. More... | |
virtual Status | adsd3500ToggleFsync ()=0 |
Toggles ADSD3500 FSYNC once if automated FSYNC is disabled. More... | |
virtual Status | adsd3500SetABinvalidationThreshold (int threshold)=0 |
Set the AB invalidation threshold. More... | |
virtual Status | adsd3500GetABinvalidationThreshold (int &threshold)=0 |
Get the AB invalidation threshold. More... | |
virtual Status | adsd3500SetConfidenceThreshold (int threshold)=0 |
Set the confidence threshold. More... | |
virtual Status | adsd3500GetConfidenceThreshold (int &threshold)=0 |
Get the confidence threshold. More... | |
virtual Status | adsd3500SetJBLFfilterEnableState (bool enable)=0 |
Enable/disable the JBLF filter. More... | |
virtual Status | adsd3500GetJBLFfilterEnableState (bool &enabled)=0 |
Get the JBLF enabled state. More... | |
virtual Status | adsd3500SetJBLFfilterSize (int size)=0 |
Set the JBLF filter size. More... | |
virtual Status | adsd3500GetJBLFfilterSize (int &size)=0 |
Get the JBLF filter size. More... | |
virtual Status | adsd3500SetRadialThresholdMin (int threshold)=0 |
Set the radial threshold min. More... | |
virtual Status | adsd3500GetRadialThresholdMin (int &threshold)=0 |
Get the radial threshold min. More... | |
virtual Status | adsd3500SetRadialThresholdMax (int threshold)=0 |
Set the radial threshold max. More... | |
virtual Status | adsd3500GetRadialThresholdMax (int &threshold)=0 |
Get the radial threshold max. More... | |
virtual Status | adsd3500GetSensorTemperature (uint16_t &tmpValue)=0 |
Get the sensor temperature. More... | |
virtual Status | adsd3500GetLaserTemperature (uint16_t &tmpValue)=0 |
Get the laser temperature. More... | |
virtual Status | adsd3500GetFirmwareVersion (std::string &fwVersion, std::string &fwHash)=0 |
virtual Status | adsd3500SetMIPIOutputSpeed (uint16_t speed)=0 |
Set ADSD3500 MIPI output speed. More... | |
virtual Status | adsd3500GetMIPIOutputSpeed (uint16_t &speed)=0 |
Get ADSD3500 MIPI output speed. More... | |
virtual Status | adsd3500GetImagerErrorCode (uint16_t &errcode)=0 |
Get error code from the imager. More... | |
virtual Status | adsd3500SetVCSELDelay (uint16_t delay)=0 |
Set the delay for VCSEL - ADSD3100 imager only. More... | |
virtual Status | adsd3500GetVCSELDelay (uint16_t &delay)=0 |
Get the delay for VCSEL - ADSD3100 imager only. More... | |
virtual Status | adsd3500SetJBLFMaxEdgeThreshold (uint16_t threshold)=0 |
Set JBLF Max Edge Threshold. More... | |
virtual Status | adsd3500SetJBLFABThreshold (uint16_t threshold)=0 |
Get JBLF Max Edge Threshold. More... | |
virtual Status | adsd3500SetJBLFGaussianSigma (uint16_t value)=0 |
Set JBLF Gaussian Sigma. More... | |
virtual Status | adsd3500GetJBLFGaussianSigma (uint16_t &value)=0 |
Get JBLF Gaussian Sigma. More... | |
virtual Status | adsd3500SetJBLFExponentialTerm (uint16_t value)=0 |
Set JBLF Exponential Term. More... | |
virtual Status | adsd3500GetJBLFExponentialTerm (uint16_t &value)=0 |
Get JBLF Exponential Term. More... | |
virtual Status | adsd3500GetFrameRate (uint16_t &fps)=0 |
Get Frame Rate. More... | |
virtual Status | adsd3500SetFrameRate (uint16_t fps)=0 |
Set Frame Rate. More... | |
virtual Status | adsd3500SetEnableEdgeConfidence (uint16_t value)=0 |
Set Enable Edge Confidence. More... | |
virtual Status | adsd3500GetTemperatureCompensationStatus (uint16_t &value)=0 |
Get Temperature Compensation Status. More... | |
virtual Status | adsd3500SetEnablePhaseInvalidation (uint16_t value)=0 |
Set Enable Phase Invalidation. More... | |
virtual Status | adsd3500SetEnableTemperatureCompensation (uint16_t value)=0 |
Set Enable Temperature Compensation. More... | |
virtual aditof::Status | adsd3500SetEnableMetadatainAB (uint16_t value)=0 |
Set Enable Metadata in the AB frame. More... | |
virtual aditof::Status | adsd3500GetEnableMetadatainAB (uint16_t &value)=0 |
Get state of Enable Metadata in the AB frame. More... | |
virtual Status | adsd3500SetGenericTemplate (uint16_t reg, uint16_t value)=0 |
Generic ADSD3500 function for commands not defined in the SDK (yet) More... | |
virtual Status | adsd3500GetGenericTemplate (uint16_t reg, uint16_t &value)=0 |
Generic ADSD3500 function for commands not defined in the SDK (yet) More... | |
virtual Status | adsd3500GetStatus (int &chipStatus, int &imagerStatus)=0 |
Returns the chip status. More... | |
virtual Status | adsd3500DisableCCBM (bool disable)=0 |
Enable/disable ccb as master. More... | |
virtual Status | adsd3500IsCCBMsupported (bool &supported)=0 |
Check whether CCB as master is supported or not. More... | |
virtual aditof::Status | adsd3500setEnableDynamicModeSwitching (bool enable)=0 |
Allows enabling or disabling the Dynamic Mode Switching. NOTE: This must be enabled before configuring the sequence! More... | |
virtual aditof::Status | adsds3500setDynamicModeSwitchingSequence (const std::vector< std::pair< uint8_t, uint8_t >> &sequence)=0 |
Configures the sequence to be captured. More... | |
virtual Status | readSerialNumber (std::string &serialNumber, bool useCacheValue=false)=0 |
Read serial number from camera and update cache. More... | |
virtual Status | getImagerType (ImagerType &imagerType) const =0 |
Provides the type of the imager. More... | |
virtual aditof::Status | saveDepthParamsToJsonFile (const std::string &savePathFile)=0 |
Save ini file to json format. More... | |
virtual aditof::Status | loadDepthParamsFromJsonFile (const std::string &pathFile)=0 |
Load adsd parameters from json file. Need setMode to apply. More... | |
virtual aditof::Status | adsd3500ResetIniParamsForMode (const uint16_t mode)=0 |
Reset the ini parameters from the chip and sets the ones stored in CCB. More... | |
virtual aditof::Status | setSensorConfiguration (const std::string &sensorConf)=0 |
Set sensor configutation table. More... | |
virtual void | dropFirstFrame (bool dropFrame)=0 |
Allow drop first frame. More... | |
+
|
+ +pure virtual | +
Enable/disable ccb as master.
+[in] | disable | - set to: 1 - disable, 0 - enable |
+
|
+ +pure virtual | +
Get the AB invalidation threshold.
+[out] | threshold |
+
|
+ +pure virtual | +
Get the confidence threshold.
+[out] | threshold |
+
|
+ +pure virtual | +
Get state of Enable Metadata in the AB frame.
+[out] | value | - See "Get Output Metadata in AB Frame status" at https://wiki.analog.com/resources/eval/user-guides/eval-adtf3175x-adsd3500 |
+
|
+ +pure virtual | +
Get the ASDSD3500 firmware version from the ADSD3500
[out] | fwVersion | - the ADSD3500 firmware version |
[out] | fwHash | - the ADSD3500 firmware git commit hash |
+
|
+ +pure virtual | +
Get Frame Rate.
+[out] | fps | - See "Get Frame Rate" at https://wiki.analog.com/resources/eval/user-guides/eval-adtf3175x-adsd3500 |
+
|
+ +pure virtual | +
Generic ADSD3500 function for commands not defined in the SDK (yet)
+[in] | reg | - 16-bit ADSD3500 register |
[out] | value | - 16-bit value read from the register |
+
|
+ +pure virtual | +
Get error code from the imager.
+[out] | errcode | - See "Get Imager Error Code" at https://wiki.analog.com/resources/eval/user-guides/eval-adtf3175x-adsd3500 |
+
|
+ +pure virtual | +
Get JBLF Exponential Term.
+[out] | value | - See "Get JBLF Exponential Term" at https://wiki.analog.com/resources/eval/user-guides/eval-adtf3175x-adsd3500 |
+
|
+ +pure virtual | +
Get the JBLF enabled state.
+[out] | enabled |
+
|
+ +pure virtual | +
Get the JBLF filter size.
+[out] | size |
+
|
+ +pure virtual | +
Get JBLF Gaussian Sigma.
+[out] | value | - See "Get JBLF Gaussian Sigma" at https://wiki.analog.com/resources/eval/user-guides/eval-adtf3175x-adsd3500 |
+
|
+ +pure virtual | +
Get the laser temperature.
+[out] | tmpValue | - Values in Celsius degree |
+
|
+ +pure virtual | +
Get ADSD3500 MIPI output speed.
+[out] | speed | - See "Get MIPI Output Speed" at https://wiki.analog.com/resources/eval/user-guides/eval-adtf3175x-adsd3500 |
+
|
+ +pure virtual | +
Get the radial threshold max.
+[out] | threshold |
+
|
+ +pure virtual | +
Get the radial threshold min.
+[out] | threshold |
+
|
+ +pure virtual | +
Get the sensor temperature.
+[out] | tmpValue | - Values in Celsius degree |
+
|
+ +pure virtual | +
Returns the chip status.
+[out] | chipStatus | - chip status (error) value |
[out] | imagerStatus | - imager status (error) value |
+
|
+ +pure virtual | +
Get Temperature Compensation Status.
+[out] | value | - See "Get Temperature Compensation Status" at https://wiki.analog.com/resources/eval/user-guides/eval-adtf3175x-adsd3500 |
+
|
+ +pure virtual | +
Get the delay for VCSEL - ADSD3100 imager only.
+[out] | delay | - See "Get VCSEL Delay" at https://wiki.analog.com/resources/eval/user-guides/eval-adtf3175x-adsd3500 |
+
|
+ +pure virtual | +
Check whether CCB as master is supported or not.
+[out] | supported | - Will be set to true in case CCBM is supported |
+
|
+ +pure virtual | +
Reset the ini parameters from the chip and sets the ones stored in CCB.
+mode | - Camera mode to be reset |
+
|
+ +pure virtual | +
Set the AB invalidation threshold.
+[in] | threshold |
+
|
+ +pure virtual | +
Set the confidence threshold.
+[in] | threshold |
+
|
+ +pure virtual | +
Allows enabling or disabling the Dynamic Mode Switching. NOTE: This must be enabled before configuring the sequence!
+[in] | enable | - Set to true to enable and false to disable |
+
|
+ +pure virtual | +
Set Enable Edge Confidence.
+[in] | value | - See "Set Enable Edge Confidence" at https://wiki.analog.com/resources/eval/user-guides/eval-adtf3175x-adsd3500 |
+
|
+ +pure virtual | +
Set Enable Metadata in the AB frame.
+[in] | value | - See "Enable/Disable Output Metadata in AB Frame" at https://wiki.analog.com/resources/eval/user-guides/eval-adtf3175x-adsd3500 |
+
|
+ +pure virtual | +
Set Enable Phase Invalidation.
+[out] | value | - See "Set Enable Phase Invalidation" at https://wiki.analog.com/resources/eval/user-guides/eval-adtf3175x-adsd3500 |
+
|
+ +pure virtual | +
Set Enable Temperature Compensation.
+[out] | value | - See "Set Enable Temperature Compensation" at https://wiki.analog.com/resources/eval/user-guides/eval-adtf3175x-adsd3500 |
+
|
+ +pure virtual | +
Set Frame Rate.
+[out] | fps | - See "Set Frame Rate" at https://wiki.analog.com/resources/eval/user-guides/eval-adtf3175x-adsd3500 |
+
|
+ +pure virtual | +
Generic ADSD3500 function for commands not defined in the SDK (yet)
+[in] | reg | - 16-bit ADSD3500 register |
[in] | value | - 16-bit value to write to the register |
+
|
+ +pure virtual | +
Get JBLF Max Edge Threshold.
+[out] | threshold | - See "Get JBLF Max Edge Threshold" at https://wiki.analog.com/resources/eval/user-guides/eval-adtf3175x-adsd3500 |
+
|
+ +pure virtual | +
Set JBLF Exponential Term.
+[in] | value | - See "Set JBLF Exponential Term" at https://wiki.analog.com/resources/eval/user-guides/eval-adtf3175x-adsd3500 |
+
|
+ +pure virtual | +
Enable/disable the JBLF filter.
+[in] | enable |
+
|
+ +pure virtual | +
Set the JBLF filter size.
+[in] | size | - Supported sizes are: 3, 5, 7 |
+
|
+ +pure virtual | +
Set JBLF Gaussian Sigma.
+[in] | value | - See "Set JBLF Gaussian Sigma" at https://wiki.analog.com/resources/eval/user-guides/eval-adtf3175x-adsd3500 |
+
|
+ +pure virtual | +
Set JBLF Max Edge Threshold.
+[in] | threshold | - See "Set JBLF Max Edge Threshold" at https://wiki.analog.com/resources/eval/user-guides/eval-adtf3175x-adsd3500 |
+
|
+ +pure virtual | +
Set ADSD3500 MIPI output speed.
+[in] | speed | - See "Set MIPI Output Speed" at https://wiki.analog.com/resources/eval/user-guides/eval-adtf3175x-adsd3500 |
+
|
+ +pure virtual | +
Set the radial threshold max.
+[in] | threshold |
+
|
+ +pure virtual | +
Set the radial threshold min.
+[in] | threshold |
+
|
+ +pure virtual | +
Enables or disables FSYNC toggle for ADSD3500.
+[in] | mode | - 2 = Fsync pin set as HiZ ; 1 = Toggle at user specified framerate ; 0 = Toggle controlled via adsd3500ToggleFsync ; |
+
|
+ +pure virtual | +
Set the delay for VCSEL - ADSD3100 imager only.
+[in] | delay | - See "Set VCSEL Delay" at https://wiki.analog.com/resources/eval/user-guides/eval-adtf3175x-adsd3500 |
+
|
+ +pure virtual | +
Toggles ADSD3500 FSYNC once if automated FSYNC is disabled.
+
+
|
+ +pure virtual | +
Update the firmware of ADSD3500 with the content found in the specified file.
+[in] | fwFilePath | - A path to a file (including file name and extension) where the firmware for adsd3500 is stored. |
+
|
+ +pure virtual | +
Configures the sequence to be captured.
+[in] | sequence | - accepts a list of maximum 8 pairs. The first item of the pair refers to the mode to be captured and the second item refers to how many times the mode should be repeated before moving on to the next pair. The entire sequence will repeat over and over again until streaming is stopped. The first item must be a valid mode. The modes being sequenced must have the exact same resolution. The second item must be between 0 and 15. If 0 is set, the mode will be skipped (will repeat 0 times). Usage example 1: calling this: adsds3500setDynamicModeSwitchingSequence( { {6, 1}, {5, 2}, {2, 3}, {3, 4}, {2, 5} } ); will create sequence: 655222333322222655222... |
Usage example 2: calling this: adsds3500setDynamicModeSwitchingSequence( { {6, 15}, {6, 15}, {6, 15}, {6, 15}, {6, 15}, {5, 1} } ); will create sequence: 6666(75 times)5666...
+NOTE: Only ADSD3030 supports setting how many times the mode should be repeated!
+
|
+ +pure virtual | +
Allow drop first frame.
+dropFrame | - Drop the first frame if true |
+
|
+ +pure virtual | +
Enable or disable the depth processing on the frames received from the sensor Must be called after getFrame() where the depth processing happens.
+[in] | enable | - set to true to enable depth processing. Set to false otherwise. |
+
|
+ +pure virtual | +
Enable the generation of a XYZ frame. The XYZ frame can be enabled or disabled through .ini configuration file but if this method is explicitly called then it will override the option in the .ini file. By default XYZ frame is disabled.
+[in] | enable | - set to true to enable the generation of XYZ, set to false otherwise. |
+
|
+ +pure virtual | +
Gets the camera's list of controls.
+[out] | controls |
+
|
+ +pure virtual | +
Returns all the modes that are supported by the camera.
+[out] | availableModes |
+
|
+ +pure virtual | +
Gets the value of a specific camera control.
+[in] | control | - Control name |
[out] | value | - Control value |
+
|
+ +pure virtual | +
Gets the current details of the camera.
+[out] | details |
+
|
+ +pure virtual | +
Get the Depth Compute Library ini parameters.
+params | - a dictionary of parameters |
+
|
+ +pure virtual | +
Provides the type of the imager.
+[out] | imagerType | - Will be set with the imager type |
+
|
+ +pure virtual | +
Gets the sensor of the camera. This gives direct access to low level configuration of the camera sensor.
+
+
|
+ +pure virtual | +
Initialize the camera. This is required before performing any operation on the camera.
+configFilepath | - The JSON configuration files which should be specific to the given module. The expected value is a file name (including extension) or left empty. |
+
|
+ +pure virtual | +
Load adsd parameters from json file. Need setMode to apply.
+pathFile | - Path to load from json file |
+
|
+ +pure virtual | +
Scale AB image with logarithmic base 10.
+frame | - The frame of the camera |
useLogScaling | - If is false is applied the normalization between 0 and 255, if is true is applied normalization between 0 and 255 and log10 |
+
|
+ +pure virtual | +
Read serial number from camera and update cache.
+[out] | serialNumber | - Will contain serial number |
[in] | useCacheValue | - If it is false it will read from camera and if it is true it will return serialNumber from cache |
+
|
+ +pure virtual | +
Captures data from the camera and assigns it to the given frame.
+frame | - The frame to which the camera data should be assign |
+
|
+ +pure virtual | +
Save ini file to json format.
+savePathFile | - Path to save json file |
+
|
+ +pure virtual | +
Save the CCB content which is obtained from module memory to a given file path.
+[in] | filepath | - A path to a file (including file name and extension) where the CCB should be stored. |
+
|
+ +pure virtual | +
Save the CFG content which is obtained from module memory to a given file path.
+[in] | filepath | - A path to a file (including file name and extension) where the CFG should be stored. |
+
|
+ +pure virtual | +
Sets a specific camera control.
+[in] | control | - Control name |
[in] | value | - Control value |
+
|
+ +pure virtual | +
Set the Depth Compute Library ini parameters.
+params | - a dictionary of parameters |
+
|
+ +pure virtual | +
Puts the camera into the given mode.
+mode | - The mode of the camera |
+
|
+ +pure virtual | +
Set sensor configutation table.
+sensorConf | - Configuration table name string like e.g. standard, standardraw, custom and customraw |
+
|
+ +pure virtual | +
Start the camera. This starts the streaming of data from the camera.
+
+
|
+ +pure virtual | +
Stop the camera. This makes the camera to stop streaming.
+
+ Time-of-Flight-SDK
+
+ |
+
This is the complete list of members for aditof::DepthSensorInterface, including all inherited members.
+adsd3500_get_status(int &chipStatus, int &imagerStatus)=0 | aditof::DepthSensorInterface | pure virtual |
adsd3500_read_cmd(uint16_t cmd, uint16_t *data, unsigned int usDelay=0)=0 | aditof::DepthSensorInterface | pure virtual |
adsd3500_read_payload(uint8_t *payload, uint16_t payload_len)=0 | aditof::DepthSensorInterface | pure virtual |
adsd3500_read_payload_cmd(uint32_t cmd, uint8_t *readback_data, uint16_t payload_len)=0 | aditof::DepthSensorInterface | pure virtual |
adsd3500_register_interrupt_callback(SensorInterruptCallback &cb)=0 | aditof::DepthSensorInterface | pure virtual |
adsd3500_reset()=0 | aditof::DepthSensorInterface | pure virtual |
adsd3500_unregister_interrupt_callback(SensorInterruptCallback &cb)=0 | aditof::DepthSensorInterface | pure virtual |
adsd3500_write_cmd(uint16_t cmd, uint16_t data)=0 | aditof::DepthSensorInterface | pure virtual |
adsd3500_write_payload(uint8_t *payload, uint16_t payload_len)=0 | aditof::DepthSensorInterface | pure virtual |
adsd3500_write_payload_cmd(uint32_t cmd, uint8_t *payload, uint16_t payload_len)=0 | aditof::DepthSensorInterface | pure virtual |
getAvailableControls(std::vector< std::string > &controls) const =0 | aditof::DepthSensorInterface | pure virtual |
getAvailableModes(std::vector< uint8_t > &modes)=0 | aditof::DepthSensorInterface | pure virtual |
getControl(const std::string &control, std::string &value) const =0 | aditof::DepthSensorInterface | pure virtual |
getDepthComputeParams(std::map< std::string, std::string > ¶ms)=0 | aditof::DepthSensorInterface | pure virtual |
getDetails(aditof::SensorDetails &details) const =0 | aditof::DepthSensorInterface | pure virtual |
getFrame(uint16_t *buffer)=0 | aditof::DepthSensorInterface | pure virtual |
getHandle(void **handle)=0 | aditof::DepthSensorInterface | pure virtual |
getIniParamsArrayForMode(int mode, std::string &iniStr)=0 | aditof::DepthSensorInterface | pure virtual |
getModeDetails(const uint8_t &mode, aditof::DepthSensorModeDetails &details)=0 | aditof::DepthSensorInterface | pure virtual |
getName(std::string &name) const =0 | aditof::DepthSensorInterface | pure virtual |
initTargetDepthCompute(uint8_t *iniFile, uint16_t iniFileLength, uint8_t *calData, uint16_t calDataLength)=0 | aditof::DepthSensorInterface | pure virtual |
open()=0 | aditof::DepthSensorInterface | pure virtual |
setControl(const std::string &control, const std::string &value)=0 | aditof::DepthSensorInterface | pure virtual |
setDepthComputeParams(const std::map< std::string, std::string > ¶ms)=0 | aditof::DepthSensorInterface | pure virtual |
setHostConnectionType(std::string &connectionType)=0 | aditof::DepthSensorInterface | pure virtual |
setMode(const uint8_t &mode)=0 | aditof::DepthSensorInterface | pure virtual |
setMode(const aditof::DepthSensorModeDetails &type)=0 | aditof::DepthSensorInterface | pure virtual |
setSensorConfiguration(const std::string &sensorConf)=0 | aditof::DepthSensorInterface | pure virtual |
start()=0 | aditof::DepthSensorInterface | pure virtual |
stop()=0 | aditof::DepthSensorInterface | pure virtual |
~DepthSensorInterface()=default | aditof::DepthSensorInterface | virtual |
+ Time-of-Flight-SDK
+
+ |
+
Provides access to the low level functionality of the camera sensor. This includes sensor configuration as well as analog front end(AFE) configuration. + More...
+ +#include <depth_sensor_interface.h>
+Public Member Functions | |
+virtual | ~DepthSensorInterface ()=default |
Destructor. | |
virtual aditof::Status | open ()=0 |
Open the communication channels with the hardware. More... | |
virtual aditof::Status | start ()=0 |
Start the streaming of data from the sensor. More... | |
virtual aditof::Status | stop ()=0 |
Stop the sensor data stream. More... | |
virtual aditof::Status | getAvailableModes (std::vector< uint8_t > &modes)=0 |
Return all modes that are supported by the sensor. More... | |
virtual aditof::Status | getModeDetails (const uint8_t &mode, aditof::DepthSensorModeDetails &details)=0 |
Returns details of specified mode. More... | |
virtual aditof::Status | setMode (const uint8_t &mode)=0 |
Set the sensor frame mode to the given type. More... | |
virtual aditof::Status | setMode (const aditof::DepthSensorModeDetails &type)=0 |
Set the sensor frame mode to the given type. More... | |
virtual aditof::Status | getFrame (uint16_t *buffer)=0 |
Request a frame from the sensor. More... | |
virtual aditof::Status | adsd3500_read_cmd (uint16_t cmd, uint16_t *data, unsigned int usDelay=0)=0 |
Send a read command to adsd3500. More... | |
virtual aditof::Status | adsd3500_write_cmd (uint16_t cmd, uint16_t data)=0 |
Send a write command to adsd3500. More... | |
virtual aditof::Status | adsd3500_read_payload_cmd (uint32_t cmd, uint8_t *readback_data, uint16_t payload_len)=0 |
Send a read command to adsd3500. This will perform a burst read making it useful for reading chunks of data. More... | |
virtual aditof::Status | adsd3500_read_payload (uint8_t *payload, uint16_t payload_len)=0 |
Reads a chunk of data from adsd3500. This will perform a burst read making it useful for reading chunks of data. More... | |
virtual aditof::Status | adsd3500_write_payload_cmd (uint32_t cmd, uint8_t *payload, uint16_t payload_len)=0 |
Send a write command to adsd3500. This will perform a burst write making it useful for writing chunks of data. More... | |
virtual aditof::Status | adsd3500_write_payload (uint8_t *payload, uint16_t payload_len)=0 |
Send a chunk of data (payload) to adsd3500. This will perform a burst write making it useful for writing chunks of data. More... | |
virtual aditof::Status | adsd3500_reset ()=0 |
Reset adsd3500 chip. More... | |
virtual aditof::Status | adsd3500_register_interrupt_callback (SensorInterruptCallback &cb)=0 |
Register a function to be called when a ADSD3500 interrupt occurs. More... | |
virtual aditof::Status | adsd3500_unregister_interrupt_callback (SensorInterruptCallback &cb)=0 |
Unregister a function registered with adsd3500_register_interrupt_callback. More... | |
virtual aditof::Status | adsd3500_get_status (int &chipStatus, int &imagerStatus)=0 |
Returns the chip status. More... | |
virtual Status | getAvailableControls (std::vector< std::string > &controls) const =0 |
Gets the sensors's list of controls. More... | |
virtual Status | setControl (const std::string &control, const std::string &value)=0 |
Sets a specific sensor control. More... | |
virtual Status | getControl (const std::string &control, std::string &value) const =0 |
Gets the value of a specific sensor control. More... | |
virtual aditof::Status | getDetails (aditof::SensorDetails &details) const =0 |
Get a structure that contains information about the instance of the sensor. More... | |
virtual aditof::Status | getHandle (void **handle)=0 |
Gets a handle to be used by other devices such as Storage, Temperature, etc. This handle will allow the other devices to communicate remotely with the embedded target. More... | |
virtual aditof::Status | getName (std::string &name) const =0 |
Get the name of the sensor. More... | |
virtual aditof::Status | setHostConnectionType (std::string &connectionType)=0 |
Set the host connection type for target sdk. More... | |
virtual aditof::Status | initTargetDepthCompute (uint8_t *iniFile, uint16_t iniFileLength, uint8_t *calData, uint16_t calDataLength)=0 |
Get the name of the sensor. More... | |
virtual aditof::Status | getDepthComputeParams (std::map< std::string, std::string > ¶ms)=0 |
Get ini parameters for Depth Compute library. More... | |
virtual aditof::Status | setDepthComputeParams (const std::map< std::string, std::string > ¶ms)=0 |
Set ini parameters for Depth Compute library. More... | |
virtual aditof::Status | setSensorConfiguration (const std::string &sensorConf)=0 |
Set sensor configutation table. More... | |
virtual aditof::Status | getIniParamsArrayForMode (int mode, std::string &iniStr)=0 |
Get ini parameters for Depth Compute library as string. More... | |
Provides access to the low level functionality of the camera sensor. This includes sensor configuration as well as analog front end(AFE) configuration.
+ +Definition at line 57 of file depth_sensor_interface.h.
+
+
|
+ +pure virtual | +
Returns the chip status.
+[out] | chipStatus | - chip status (error) value |
[out] | imagerStatus | - imager status (error) value |
+
|
+ +pure virtual | +
Send a read command to adsd3500.
+cmd | - the command to be sent | |
[out] | data | - the variable where the read data will be stored |
usDelay | - the number of microseconds to wait between the host command and the actual read |
+
|
+ +pure virtual | +
Reads a chunk of data from adsd3500. This will perform a burst read making it useful for reading chunks of data.
+payload | - the location from where to take the data chunk and read it |
payload_len | - the number of bytes to read |
+
|
+ +pure virtual | +
Send a read command to adsd3500. This will perform a burst read making it useful for reading chunks of data.
+cmd | - the command to be sent | |
[out] | readback_data | - the location where the read data chunk will be stored |
payload_len | - the number of bytes to read |
+
|
+ +pure virtual | +
Register a function to be called when a ADSD3500 interrupt occurs.
+cb | - the function to be called whenever the interrupt occurs |
+
|
+ +pure virtual | +
Reset adsd3500 chip.
+
+
|
+ +pure virtual | +
Unregister a function registered with adsd3500_register_interrupt_callback.
+cb | - the function to be unregistred |
+
|
+ +pure virtual | +
Send a write command to adsd3500.
+cmd | - the command to be sent |
data | - the data to be written |
+
|
+ +pure virtual | +
Send a chunk of data (payload) to adsd3500. This will perform a burst write making it useful for writing chunks of data.
+payload | - the location from where to take the data chunk and write it |
payload_len | - the number of bytes to write |
+
|
+ +pure virtual | +
Send a write command to adsd3500. This will perform a burst write making it useful for writing chunks of data.
+cmd | - the command to be sent |
payload | - the location from where to take the data chunk and write it |
payload_len | - the number of bytes to write |
+
|
+ +pure virtual | +
Gets the sensors's list of controls.
+[out] | controls |
+
|
+ +pure virtual | +
Return all modes that are supported by the sensor.
+[out] | modes |
+
|
+ +pure virtual | +
Gets the value of a specific sensor control.
+[in] | control | - Control name |
[out] | value | - Control value |
+
|
+ +pure virtual | +
Get ini parameters for Depth Compute library.
+[in] | params | - a dictionary of parameters |
+
|
+ +pure virtual | +
Get a structure that contains information about the instance of the sensor.
+[out] | details | - the variable where the sensor details should be stored |
+
|
+ +pure virtual | +
Request a frame from the sensor.
+buffer | - a valid location where the new frame should be stored. The size of the frame is known (cached) internally and gets updated each time setMode() is called. |
+
|
+ +pure virtual | +
Gets a handle to be used by other devices such as Storage, Temperature, etc. This handle will allow the other devices to communicate remotely with the embedded target.
+[out] | handle | - the handle which is owned by this instance |
+
|
+ +pure virtual | +
Get ini parameters for Depth Compute library as string.
+[in] | mode | - desired mode |
[out] | iniStr | - a string that contain ini params |
+
|
+ +pure virtual | +
Returns details of specified mode.
+mode | ||
[out] | details |
+
|
+ +pure virtual | +
Get the name of the sensor.
+[out] | name | - the string in which the name is stored |
+
|
+ +pure virtual | +
Get the name of the sensor.
+[in] | iniFile | - iniFile content parsed as uint8_t* |
[in] | iniFileLength | - iniFile content length |
[in] | calData | - calibration data parsed as uint8_t* |
[in] | calDataLength | - calibration data content length |
+
|
+ +pure virtual | +
Open the communication channels with the hardware.
+
+
|
+ +pure virtual | +
Sets a specific sensor control.
+[in] | control | - Control name |
[in] | value | - Control value |
+
|
+ +pure virtual | +
Set ini parameters for Depth Compute library.
+[in] | params | - a dictionary of parameters |
+
|
+ +pure virtual | +
Set the host connection type for target sdk.
+[in] | connectionType | - the string that sets the host type on the target |
+
|
+ +pure virtual | +
Set the sensor frame mode to the given type.
+mode | - desired mode |
+
|
+ +pure virtual | +
Set the sensor frame mode to the given type.
+type | - frame details structure containing the frame type |
+
|
+ +pure virtual | +
Set sensor configutation table.
+sensorConf | - Configuration table name string like e.g. standard, standardraw, custom and customraw |
+
|
+ +pure virtual | +
Start the streaming of data from the sensor.
+
+
|
+ +pure virtual | +
Stop the sensor data stream.
+
+ Time-of-Flight-SDK
+
+ |
+
This is the complete list of members for aditof::Frame, including all inherited members.
+Frame() | aditof::Frame | |
Frame(const Frame &op) | aditof::Frame | |
Frame(Frame &&) noexcept | aditof::Frame | |
getData(const std::string &dataType, uint16_t **dataPtr) | aditof::Frame | |
getDataDetails(const std::string &dataType, FrameDataDetails &details) const | aditof::Frame | |
getDetails(FrameDetails &details) const | aditof::Frame | |
getMetadataStruct(Metadata &metadata) const | aditof::Frame | virtual |
operator=(const Frame &op) | aditof::Frame | |
operator=(Frame &&) noexcept | aditof::Frame | |
setDetails(const FrameDetails &details) | aditof::Frame | |
~Frame() | aditof::Frame |
+ Time-of-Flight-SDK
+
+ |
+
#include <frame.h>
+Public Member Functions | |
+SDK_API | Frame () |
Constructor. | |
+SDK_API | ~Frame () |
Destructor. | |
+SDK_API | Frame (const Frame &op) |
Copy constructor. | |
+SDK_API Frame & | operator= (const Frame &op) |
Copy assignment. | |
+SDK_API | Frame (Frame &&) noexcept |
Move constructor. | |
+SDK_API Frame & | operator= (Frame &&) noexcept |
Move assignment. | |
SDK_API Status | setDetails (const FrameDetails &details) |
Configures the frame with the given details. More... | |
SDK_API Status | getDetails (FrameDetails &details) const |
Gets the current details of the frame. More... | |
SDK_API Status | getDataDetails (const std::string &dataType, FrameDataDetails &details) const |
Gets details of a type of data within the frame. More... | |
SDK_API Status | getData (const std::string &dataType, uint16_t **dataPtr) |
Gets the address where the specified data is being stored. More... | |
virtual SDK_API Status | getMetadataStruct (Metadata &metadata) const |
Extracts the metadata content and returns a struct with values. More... | |
SDK_API Status aditof::Frame::getData | +( | +const std::string & | +dataType, | +
+ | + | uint16_t ** | +dataPtr | +
+ | ) | ++ |
Gets the address where the specified data is being stored.
+dataType | ||
[out] | dataPtr |
SDK_API Status aditof::Frame::getDataDetails | +( | +const std::string & | +dataType, | +
+ | + | FrameDataDetails & | +details | +
+ | ) | +const | +
Gets details of a type of data within the frame.
+dataType | ||
[out] | details |
SDK_API Status aditof::Frame::getDetails | +( | +FrameDetails & | +details | ) | +const | +
Gets the current details of the frame.
+[out] | details |
+
|
+ +virtual | +
Extracts the metadata content and returns a struct with values.
+[out] | metadata | - struct containing all metadata fields |
SDK_API Status aditof::Frame::setDetails | +( | +const FrameDetails & | +details | ) | ++ |
Configures the frame with the given details.
+details |
+ Time-of-Flight-SDK
+
+ |
+
This is the complete list of members for aditof::FrameHandler, including all inherited members.
+FrameHandler() (defined in aditof::FrameHandler) | aditof::FrameHandler | |
FrameHandler(FrameHandler &&) noexcept | aditof::FrameHandler | |
operator=(FrameHandler &&) noexcept | aditof::FrameHandler | |
readNextFrame(aditof::Frame &frame, const std::string &fullFileName="") | aditof::FrameHandler | |
saveFrameToFile(aditof::Frame &frame, const std::string &fileName="") | aditof::FrameHandler | |
saveFrameToFileMultithread(aditof::Frame &frame, const std::string &fileName="") | aditof::FrameHandler | |
setCustomFormat(const std::string &format) | aditof::FrameHandler | |
setFrameContent(const std::string &frameContent) | aditof::FrameHandler | |
setInputFileName(const std::string &fullFileName) | aditof::FrameHandler | |
setOutputFilePath(const std::string &filePath) | aditof::FrameHandler | |
storeFramesToSingleFile(bool enable) | aditof::FrameHandler | |
~FrameHandler() (defined in aditof::FrameHandler) | aditof::FrameHandler |
+ Time-of-Flight-SDK
+
+ |
+
Handles operations on a frame such as saving it to file and creating a new frame with content read from file. + More...
+ +#include <frame_handler.h>
+Public Member Functions | |
+SDK_API | FrameHandler (FrameHandler &&) noexcept |
Move constructor. | |
+SDK_API FrameHandler & | operator= (FrameHandler &&) noexcept |
Move assignment. | |
SDK_API aditof::Status | setOutputFilePath (const std::string &filePath) |
Set the output path/output folder for the frames. More... | |
SDK_API aditof::Status | setInputFileName (const std::string &fullFileName) |
Set the input file for the frames. More... | |
SDK_API aditof::Status | saveFrameToFile (aditof::Frame &frame, const std::string &fileName="") |
Store frame to file. More... | |
SDK_API aditof::Status | saveFrameToFileMultithread (aditof::Frame &frame, const std::string &fileName="") |
Store frame to file using a separate thread. More... | |
SDK_API aditof::Status | readNextFrame (aditof::Frame &frame, const std::string &fullFileName="") |
Reads frame from a file. If same file is provided it will continue to read from the last position. More... | |
SDK_API aditof::Status | setCustomFormat (const std::string &format) |
A custom format in which the frames will be stored/read. More... | |
SDK_API aditof::Status | storeFramesToSingleFile (bool enable) |
Enable/disable if single file is intended to use for storing data. More... | |
SDK_API aditof::Status | setFrameContent (const std::string &frameContent) |
Set which frame element you want to store/read (depth/ab/conf) More... | |
Handles operations on a frame such as saving it to file and creating a new frame with content read from file.
+ +Definition at line 57 of file frame_handler.h.
+SDK_API aditof::Status aditof::FrameHandler::readNextFrame | +( | +aditof::Frame & | +frame, | +
+ | + | const std::string & | +fullFileName = "" |
+
+ | ) | ++ |
Reads frame from a file. If same file is provided it will continue to read from the last position.
+[out] | frame | - Frame object in which the frame will be stored |
[in] | fullFileName | - Full file name |
SDK_API aditof::Status aditof::FrameHandler::saveFrameToFile | +( | +aditof::Frame & | +frame, | +
+ | + | const std::string & | +fileName = "" |
+
+ | ) | ++ |
Store frame to file.
+[in] | frame | - frame object to be stored in file |
[in] | fileName | - the name of the file. If none provided it will automatically generate one depending on time and frame number. |
SDK_API aditof::Status aditof::FrameHandler::saveFrameToFileMultithread | +( | +aditof::Frame & | +frame, | +
+ | + | const std::string & | +fileName = "" |
+
+ | ) | ++ |
Store frame to file using a separate thread.
+[in] | frame | - frame object to be stored in file |
[in] | fileName | - the name of the file. If none provided it will automatically generate one depending on time and frame number. |
SDK_API aditof::Status aditof::FrameHandler::setCustomFormat | +( | +const std::string & | +format | ) | ++ |
A custom format in which the frames will be stored/read.
+[in] | format | - Format name |
SDK_API aditof::Status aditof::FrameHandler::setFrameContent | +( | +const std::string & | +frameContent | ) | ++ |
Set which frame element you want to store/read (depth/ab/conf)
+[in] | frameContent | - a string providing the frame subelements that will be stored |
SDK_API aditof::Status aditof::FrameHandler::setInputFileName | +( | +const std::string & | +fullFileName | ) | ++ |
Set the input file for the frames.
+[in] | fullFileName | - Input file name |
SDK_API aditof::Status aditof::FrameHandler::setOutputFilePath | +( | +const std::string & | +filePath | ) | ++ |
Set the output path/output folder for the frames.
+[in] | filePath | - File path |
SDK_API aditof::Status aditof::FrameHandler::storeFramesToSingleFile | +( | +bool | +enable | ) | ++ |
Enable/disable if single file is intended to use for storing data.
+[in] | enable | - true for single file use/ false for multiple file use |
+ Time-of-Flight-SDK
+
+ |
+
This is the complete list of members for aditof::SensorEnumeratorFactory, including all inherited members.
+buildNetworkSensorEnumerator(const std::string &ip) | aditof::SensorEnumeratorFactory | static |
buildOfflineSensorEnumerator() | aditof::SensorEnumeratorFactory | static |
buildTargetSensorEnumerator() | aditof::SensorEnumeratorFactory | static |
buildUsbSensorEnumerator() | aditof::SensorEnumeratorFactory | static |
+ Time-of-Flight-SDK
+
+ |
+
Provides the means to construct different types of sensors enumerators. Based on the connection type (on target, USB, Network), different enumerators need to be used. + More...
+ +#include <sensor_enumerator_factory.h>
+Static Public Member Functions | |
static std::unique_ptr< SensorEnumeratorInterface > | buildTargetSensorEnumerator () |
Factory method to create an enumerator to look for sensors on target. Factory method will return null if the call is not made on target. More... | |
static std::unique_ptr< SensorEnumeratorInterface > | buildUsbSensorEnumerator () |
static std::unique_ptr< SensorEnumeratorInterface > | buildNetworkSensorEnumerator (const std::string &ip) |
static std::unique_ptr< SensorEnumeratorInterface > | buildOfflineSensorEnumerator () |
Provides the means to construct different types of sensors enumerators. Based on the connection type (on target, USB, Network), different enumerators need to be used.
+ +Definition at line 48 of file sensor_enumerator_factory.h.
+
+
|
+ +static | +
Factory method to create an enumerator to look for sensors over network.
+
|
+ +static | +
Factory method to create an offline enumerator.
+
|
+ +static | +
Factory method to create an enumerator to look for sensors on target. Factory method will return null if the call is not made on target.
+
+
|
+ +static | +
Factory method to create an enumerator to look for sensors over USB.
+ Time-of-Flight-SDK
+
+ |
+
This is the complete list of members for aditof::SensorEnumeratorInterface, including all inherited members.
+getDepthSensors(std::vector< std::shared_ptr< aditof::DepthSensorInterface >> &depthSensors)=0 | aditof::SensorEnumeratorInterface | pure virtual |
getKernelVersion(std::string &kernelVersion) const =0 | aditof::SensorEnumeratorInterface | pure virtual |
getSdVersion(std::string &sdVersion) const =0 | aditof::SensorEnumeratorInterface | pure virtual |
getUbootVersion(std::string &uBootVersion) const =0 | aditof::SensorEnumeratorInterface | pure virtual |
searchSensors()=0 | aditof::SensorEnumeratorInterface | pure virtual |
~SensorEnumeratorInterface()=default | aditof::SensorEnumeratorInterface | virtual |
+ Time-of-Flight-SDK
+
+ |
+
Can search for sensors and retrieve sensors by category. + More...
+ +#include <sensor_enumerator_interface.h>
+Public Member Functions | |
+virtual | ~SensorEnumeratorInterface ()=default |
Destructor. | |
virtual aditof::Status | searchSensors ()=0 |
Do a search for the available sensors. More... | |
virtual aditof::Status | getDepthSensors (std::vector< std::shared_ptr< aditof::DepthSensorInterface >> &depthSensors)=0 |
Get the available depth sensors. More... | |
virtual aditof::Status | getUbootVersion (std::string &uBootVersion) const =0 |
Get the U-Boot version that is installed on the embedded system that the camera is attached to. More... | |
virtual aditof::Status | getKernelVersion (std::string &kernelVersion) const =0 |
Get the kernel version that is installed on the embedded system that the camera is attached to. More... | |
virtual aditof::Status | getSdVersion (std::string &sdVersion) const =0 |
Get the SD card image version on the embedded system that the camera is attached to. More... | |
Can search for sensors and retrieve sensors by category.
+ +Definition at line 47 of file sensor_enumerator_interface.h.
+
+
|
+ +pure virtual | +
Get the available depth sensors.
+[out] | depthSensors | - list of found sensors |
+
|
+ +pure virtual | +
Get the kernel version that is installed on the embedded system that the camera is attached to.
+[out] | kernelVersion | - string containing data abouth the version. |
+
|
+ +pure virtual | +
Get the SD card image version on the embedded system that the camera is attached to.
+[out] | sdVersion | - string containing data abouth the version. |
+
|
+ +pure virtual | +
Get the U-Boot version that is installed on the embedded system that the camera is attached to.
+[out] | uBootVersion | - string containing data abouth the version. |
+
|
+ +pure virtual | +
Do a search for the available sensors.
+
+ Time-of-Flight-SDK
+
+ |
+
This is the complete list of members for aditof::System, including all inherited members.
+getCameraList(std::vector< std::shared_ptr< Camera >> &cameraList, const std::string &uri="") const | aditof::System | |
operator=(System &&op) noexcept | aditof::System | |
System() | aditof::System | |
System(System &&op) noexcept | aditof::System | |
~System() | aditof::System |
+ Time-of-Flight-SDK
+
+ |
+
The TOF system that manages the cameras. + More...
+ +#include <system.h>
+Public Member Functions | |
+SDK_API | System () |
Constructor. | |
+SDK_API | ~System () |
Destructor. | |
+SDK_API | System (System &&op) noexcept |
Move constructor. | |
+SDK_API System & | operator= (System &&op) noexcept |
Move assignment. | |
SDK_API Status | getCameraList (std::vector< std::shared_ptr< Camera >> &cameraList, const std::string &uri="") const |
Populates the given list with Camera objects that correspond to the available cameras. More... | |
SDK_API Status aditof::System::getCameraList | +( | +std::vector< std::shared_ptr< Camera >> & | +cameraList, | +
+ | + | const std::string & | +uri = "" |
+
+ | ) | +const | +
Populates the given list with Camera objects that correspond to the available cameras.
+[out] | cameraList | - A container to be set with the available cameras |
[in] | uri | - A uniform resource identifier (URI) for specifying the type of connectivity with the camera and the identification of the camera. For no remote connection, the uri parameter should be omitted For network connectivity, the URI format must be: "ip:ip-address" where the ip-address is the address of the system to which the camera is attached to. For example: "ip:10.43.0.1" or "ip:192.186.1.2", etc. For USB (UVC) connectivity, the uri parameter should be omitted |
+ Time-of-Flight-SDK
+
+ |
+
|
| FrameDataDetails (aditof) |
| SensorEnumeratorInterface (aditof) | |||
FrameDetails (aditof) | System (aditof) | ||||||
ADSDErrors (aditof) | DepthSensorInterface (aditof) | FrameHandler (aditof) | Point3I_sdk (aditof) | ||||
| DepthSensorModeDetails (aditof) |
|
| ||||
DriverConfiguration (aditof) | |||||||
Camera (aditof) |
| IntrinsicParameters (aditof) | SensorDetails (aditof) | ||||
CameraDetails (aditof) |
| SensorEnumeratorFactory (aditof) | |||||
Frame (aditof) | |||||||
Metadata (aditof) | |||||||