Main Page
Namespaces
Namespace List
Namespace Members
All
a
b
c
d
e
f
g
h
i
l
m
n
o
p
r
s
t
u
v
w
x
Functions
a
b
c
d
e
f
g
h
i
l
m
o
p
r
s
t
u
v
w
Variables
b
c
d
e
h
i
l
m
n
p
r
s
u
x
Typedefs
b
c
d
e
f
g
i
m
p
r
u
v
Enumerations
Enumerator
a
b
f
g
i
m
n
r
s
u
Classes
Class List
Class Hierarchy
Class Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
a
b
c
d
e
f
g
h
i
l
m
n
o
p
r
s
t
u
v
w
x
y
~
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
a
b
c
d
e
f
h
i
m
n
p
q
r
s
t
u
v
x
Enumerations
a
c
d
e
f
k
l
m
p
r
s
t
v
w
Enumerator
a
b
d
f
g
h
i
l
m
n
o
p
r
s
u
v
Related Functions
Files
File List
File Members
All
_
a
b
c
d
e
f
g
i
k
l
m
n
o
p
r
s
t
u
v
w
Functions
b
c
d
e
f
g
m
o
p
r
s
t
u
v
w
Variables
a
b
c
d
e
f
i
k
l
m
n
o
p
r
s
t
w
Typedefs
Enumerations
Enumerator
Macros
_
d
f
i
m
n
p
s
t
u
shared
depthai-shared
src
datatype
DatatypeEnum.cpp
Go to the documentation of this file.
1
#include "
depthai-shared/datatype/DatatypeEnum.hpp
"
2
3
#include <functional>
4
#include <type_traits>
5
#include <unordered_map>
6
#include <vector>
7
8
namespace
dai
{
9
10
const
std::unordered_map<DatatypeEnum, std::vector<DatatypeEnum>>
hierarchy
= {
11
{
DatatypeEnum::Buffer
,
12
{
13
DatatypeEnum::ImgFrame
,
14
DatatypeEnum::EncodedFrame
,
15
DatatypeEnum::NNData
,
16
DatatypeEnum::ImageManipConfig
,
17
DatatypeEnum::CameraControl
,
18
DatatypeEnum::ImgDetections
,
19
DatatypeEnum::SpatialImgDetections
,
20
DatatypeEnum::SystemInformation
,
21
DatatypeEnum::SpatialLocationCalculatorConfig
,
22
DatatypeEnum::SpatialLocationCalculatorData
,
23
DatatypeEnum::EdgeDetectorConfig
,
24
DatatypeEnum::Tracklets
,
25
DatatypeEnum::IMUData
,
26
DatatypeEnum::StereoDepthConfig
,
27
DatatypeEnum::FeatureTrackerConfig
,
28
DatatypeEnum::ToFConfig
,
29
DatatypeEnum::TrackedFeatures
,
30
DatatypeEnum::AprilTagConfig
,
31
DatatypeEnum::AprilTags
,
32
DatatypeEnum::PointCloudConfig
,
33
DatatypeEnum::PointCloudData
,
34
DatatypeEnum::MessageGroup
,
35
DatatypeEnum::ImageAlignConfig
,
36
}},
37
{
DatatypeEnum::ImgFrame
, {}},
38
{
DatatypeEnum::EncodedFrame
, {}},
39
{
DatatypeEnum::NNData
, {}},
40
{
DatatypeEnum::ImageManipConfig
, {}},
41
{
DatatypeEnum::CameraControl
, {}},
42
{
DatatypeEnum::ImgDetections
, {
DatatypeEnum::SpatialImgDetections
}},
43
{
DatatypeEnum::SpatialImgDetections
, {}},
44
{
DatatypeEnum::SystemInformation
, {}},
45
{
DatatypeEnum::SpatialLocationCalculatorConfig
, {}},
46
{
DatatypeEnum::SpatialLocationCalculatorData
, {}},
47
{
DatatypeEnum::EdgeDetectorConfig
, {}},
48
{
DatatypeEnum::Tracklets
, {}},
49
{
DatatypeEnum::IMUData
, {}},
50
{
DatatypeEnum::StereoDepthConfig
, {}},
51
{
DatatypeEnum::FeatureTrackerConfig
, {}},
52
{
DatatypeEnum::ToFConfig
, {}},
53
{
DatatypeEnum::TrackedFeatures
, {}},
54
{
DatatypeEnum::AprilTagConfig
, {}},
55
{
DatatypeEnum::AprilTags
, {}},
56
{
DatatypeEnum::PointCloudConfig
, {}},
57
{
DatatypeEnum::PointCloudData
, {}},
58
{
DatatypeEnum::MessageGroup
, {}},
59
{
DatatypeEnum::ImageAlignConfig
, {}},
60
};
61
62
bool
isDatatypeSubclassOf
(
DatatypeEnum
parent,
DatatypeEnum
children) {
63
for
(
const
auto
& d :
hierarchy
.at(parent)) {
64
if
(d == children)
return
true
;
65
if
(
isDatatypeSubclassOf
(d, children))
return
true
;
66
}
67
return
false
;
68
}
69
70
}
// namespace dai
dai::DatatypeEnum::AprilTagConfig
@ AprilTagConfig
dai::DatatypeEnum::ImageManipConfig
@ ImageManipConfig
dai::DatatypeEnum
DatatypeEnum
Definition:
DatatypeEnum.hpp:7
dai::DatatypeEnum::SpatialLocationCalculatorConfig
@ SpatialLocationCalculatorConfig
dai::DatatypeEnum::Buffer
@ Buffer
dai::DatatypeEnum::SpatialLocationCalculatorData
@ SpatialLocationCalculatorData
dai::DatatypeEnum::PointCloudConfig
@ PointCloudConfig
dai::DatatypeEnum::AprilTags
@ AprilTags
dai::DatatypeEnum::PointCloudData
@ PointCloudData
DatatypeEnum.hpp
dai::isDatatypeSubclassOf
bool isDatatypeSubclassOf(DatatypeEnum parent, DatatypeEnum children)
Definition:
DatatypeEnum.cpp:62
dai::DatatypeEnum::EncodedFrame
@ EncodedFrame
dai::DatatypeEnum::StereoDepthConfig
@ StereoDepthConfig
dai::DatatypeEnum::ImageAlignConfig
@ ImageAlignConfig
dai::DatatypeEnum::TrackedFeatures
@ TrackedFeatures
dai::DatatypeEnum::MessageGroup
@ MessageGroup
dai::DatatypeEnum::Tracklets
@ Tracklets
dai::DatatypeEnum::ToFConfig
@ ToFConfig
dai::DatatypeEnum::CameraControl
@ CameraControl
dai::DatatypeEnum::NNData
@ NNData
dai::DatatypeEnum::SystemInformation
@ SystemInformation
dai::DatatypeEnum::ImgDetections
@ ImgDetections
dai::DatatypeEnum::EdgeDetectorConfig
@ EdgeDetectorConfig
dai::DatatypeEnum::ImgFrame
@ ImgFrame
dai::DatatypeEnum::IMUData
@ IMUData
dai
Definition:
CameraExposureOffset.hpp:6
dai::DatatypeEnum::SpatialImgDetections
@ SpatialImgDetections
dai::hierarchy
const std::unordered_map< DatatypeEnum, std::vector< DatatypeEnum > > hierarchy
Definition:
DatatypeEnum.cpp:10
dai::DatatypeEnum::FeatureTrackerConfig
@ FeatureTrackerConfig
depthai
Author(s): Martin Peterlin
autogenerated on Sat Mar 22 2025 02:58:19