ApraPipes
1.0
Loading...
Searching...
No Matches
FrameMetadata.h
1
#pragma once
2
3
#include "CommonDefs.h"
4
#include "AIPExceptions.h"
5
6
#define NOT_SET_NUM 999999
7
8
class
RawImageMetadata
;
9
10
class
FrameMetadata
{
11
public
:
12
static
size_t
getPaddingLength
(
size_t
length,
size_t
alignLength)
13
{
14
if
(!alignLength)
15
{
16
return
0;
17
}
18
19
auto
rem = length % alignLength;
20
if
(rem == 0)
21
{
22
return
0;
23
}
24
25
return
(alignLength - rem);
26
}
27
28
public
:
29
enum
FrameType
{
30
GENERAL
= 0,
31
ENCODED_IMAGE
,
32
RAW_IMAGE
,
33
RAW_IMAGE_PLANAR
,
34
AUDIO
,
35
ARRAY
,
36
CHANGE_DETECTION
,
37
EDGEDEFECT_ANALYSIS_INFO
,
38
PROPS_CHANGE
,
39
PAUSE_PLAY
,
40
COMMAND
,
41
H264_DATA
,
42
GPIO
,
43
APRA_LINES
,
44
LINE
,
45
ROI
,
46
DEFECTS_INFO
,
47
FACEDETECTS_INFO
,
48
BMP_IMAGE
,
49
MP4_VIDEO_METADATA
,
50
HEVC_DATA
,
//H265
51
MOTION_VECTOR_DATA
,
52
OVERLAY_INFO_IMAGE
,
53
FACE_LANDMARKS_INFO
,
54
TEXT
55
};
56
57
enum
MemType
58
{
59
HOST
= 1,
60
HOST_PINNED
= 2,
61
CUDA_DEVICE
= 3,
62
DMABUF
= 4
63
};
64
65
FrameMetadata
(
FrameType
_frameType)
66
{
67
frameType
= _frameType;
68
memType
=
MemType::HOST
;
69
hint
=
""
;
70
}
71
72
FrameMetadata
(
FrameType
_frameType, std::string _hint)
73
{
74
frameType
= _frameType;
75
memType
=
MemType::HOST
;
76
hint
= _hint;
77
}
78
79
FrameMetadata
(
FrameType
_frameType,
MemType
_memType)
80
{
81
frameType
= _frameType;
82
memType
= _memType;
83
hint
=
""
;
84
}
85
86
virtual
~FrameMetadata
() { }
87
88
virtual
void
reset
()
89
{
90
dataSize
= NOT_SET_NUM;
91
}
92
93
virtual
bool
isSet
()
94
{
95
return
true
;
96
}
97
98
FrameType
getFrameType
()
99
{
100
return
frameType
;
101
}
102
103
MemType
getMemType
()
104
{
105
return
memType
;
106
}
107
108
virtual
size_t
getDataSize
()
109
{
110
return
dataSize
;
111
}
112
113
std::string
getHint
() {
return
hint
; }
114
115
void
setHint
(std::string _hint) {
hint
= _hint; }
116
void
copyHint
(
FrameMetadata
& metadata)
117
{
118
if
(!
hint
.empty())
119
{
120
return
;
121
}
122
123
auto
_hint = metadata.
getHint
();
124
if
(_hint.empty())
125
{
126
return
;
127
}
128
129
setHint
(_hint);
130
}
131
132
void
setData
(
FrameMetadata
& metadata)
133
{
134
// dont set memType
135
// assuming frameType is same so no need to set
136
137
// hint I am still undecided whether to copy or not
138
}
139
140
protected
:
141
FrameType
frameType
;
142
MemType
memType
;
143
std::string
hint
;
144
145
size_t
dataSize
= NOT_SET_NUM;
146
};
FrameMetadata::getMemType
MemType getMemType()
Definition
FrameMetadata.h:103
FrameMetadata::getFrameType
FrameType getFrameType()
Definition
FrameMetadata.h:98
FrameMetadata::getHint
std::string getHint()
Definition
FrameMetadata.h:113
FrameMetadata::FrameMetadata
FrameMetadata(FrameType _frameType)
Definition
FrameMetadata.h:65
FrameMetadata::FrameMetadata
FrameMetadata(FrameType _frameType, std::string _hint)
Definition
FrameMetadata.h:72
FrameMetadata::reset
virtual void reset()
Definition
FrameMetadata.h:88
FrameMetadata::setHint
void setHint(std::string _hint)
Definition
FrameMetadata.h:115
FrameMetadata::dataSize
size_t dataSize
Definition
FrameMetadata.h:145
FrameMetadata::isSet
virtual bool isSet()
Definition
FrameMetadata.h:93
FrameMetadata::~FrameMetadata
virtual ~FrameMetadata()
Definition
FrameMetadata.h:86
FrameMetadata::memType
MemType memType
Definition
FrameMetadata.h:142
FrameMetadata::getPaddingLength
static size_t getPaddingLength(size_t length, size_t alignLength)
Definition
FrameMetadata.h:12
FrameMetadata::setData
void setData(FrameMetadata &metadata)
Definition
FrameMetadata.h:132
FrameMetadata::hint
std::string hint
Definition
FrameMetadata.h:143
FrameMetadata::MemType
MemType
Definition
FrameMetadata.h:58
FrameMetadata::HOST
@ HOST
Definition
FrameMetadata.h:59
FrameMetadata::HOST_PINNED
@ HOST_PINNED
Definition
FrameMetadata.h:60
FrameMetadata::CUDA_DEVICE
@ CUDA_DEVICE
Definition
FrameMetadata.h:61
FrameMetadata::DMABUF
@ DMABUF
Definition
FrameMetadata.h:62
FrameMetadata::copyHint
void copyHint(FrameMetadata &metadata)
Definition
FrameMetadata.h:116
FrameMetadata::FrameMetadata
FrameMetadata(FrameType _frameType, MemType _memType)
Definition
FrameMetadata.h:79
FrameMetadata::FrameType
FrameType
Definition
FrameMetadata.h:29
FrameMetadata::EDGEDEFECT_ANALYSIS_INFO
@ EDGEDEFECT_ANALYSIS_INFO
Definition
FrameMetadata.h:37
FrameMetadata::GPIO
@ GPIO
Definition
FrameMetadata.h:42
FrameMetadata::HEVC_DATA
@ HEVC_DATA
Definition
FrameMetadata.h:50
FrameMetadata::DEFECTS_INFO
@ DEFECTS_INFO
Definition
FrameMetadata.h:46
FrameMetadata::COMMAND
@ COMMAND
Definition
FrameMetadata.h:40
FrameMetadata::PROPS_CHANGE
@ PROPS_CHANGE
Definition
FrameMetadata.h:38
FrameMetadata::ARRAY
@ ARRAY
Definition
FrameMetadata.h:35
FrameMetadata::RAW_IMAGE_PLANAR
@ RAW_IMAGE_PLANAR
Definition
FrameMetadata.h:33
FrameMetadata::FACE_LANDMARKS_INFO
@ FACE_LANDMARKS_INFO
Definition
FrameMetadata.h:53
FrameMetadata::APRA_LINES
@ APRA_LINES
Definition
FrameMetadata.h:43
FrameMetadata::BMP_IMAGE
@ BMP_IMAGE
Definition
FrameMetadata.h:48
FrameMetadata::AUDIO
@ AUDIO
Definition
FrameMetadata.h:34
FrameMetadata::OVERLAY_INFO_IMAGE
@ OVERLAY_INFO_IMAGE
Definition
FrameMetadata.h:52
FrameMetadata::ROI
@ ROI
Definition
FrameMetadata.h:45
FrameMetadata::FACEDETECTS_INFO
@ FACEDETECTS_INFO
Definition
FrameMetadata.h:47
FrameMetadata::RAW_IMAGE
@ RAW_IMAGE
Definition
FrameMetadata.h:32
FrameMetadata::MOTION_VECTOR_DATA
@ MOTION_VECTOR_DATA
Definition
FrameMetadata.h:51
FrameMetadata::LINE
@ LINE
Definition
FrameMetadata.h:44
FrameMetadata::CHANGE_DETECTION
@ CHANGE_DETECTION
Definition
FrameMetadata.h:36
FrameMetadata::MP4_VIDEO_METADATA
@ MP4_VIDEO_METADATA
Definition
FrameMetadata.h:49
FrameMetadata::ENCODED_IMAGE
@ ENCODED_IMAGE
Definition
FrameMetadata.h:31
FrameMetadata::H264_DATA
@ H264_DATA
Definition
FrameMetadata.h:41
FrameMetadata::GENERAL
@ GENERAL
Definition
FrameMetadata.h:30
FrameMetadata::TEXT
@ TEXT
Definition
FrameMetadata.h:54
FrameMetadata::PAUSE_PLAY
@ PAUSE_PLAY
Definition
FrameMetadata.h:39
FrameMetadata::getDataSize
virtual size_t getDataSize()
Definition
FrameMetadata.h:108
FrameMetadata::frameType
FrameType frameType
Definition
FrameMetadata.h:141
RawImageMetadata
Definition
RawImageMetadata.h:10
base
include
FrameMetadata.h
Source Commit: ea96e35