45
#ifndef OPENCV_HAL_HPP
 
46
#define OPENCV_HAL_HPP
 
48
#include "opencv2/core/cvdef.h"
 
49
#include "opencv2/core/cvstd.hpp"
 
50
#include "opencv2/core/hal/interface.h"
 
52
namespace
cv
{
namespace
hal {
 
57CV_EXPORTS
int
normHamming(
const
uchar* a,
int
n);
 
58CV_EXPORTS
int
normHamming(
const
uchar* a,
const
uchar* b,
int
n);
 
60CV_EXPORTS
int
normHamming(
const
uchar* a,
int
n,
int
cellSize);
 
61CV_EXPORTS
int
normHamming(
const
uchar* a,
const
uchar* b,
int
n,
int
cellSize);
 
63CV_EXPORTS
int
LU32f(
float* A,
size_t
astep,
int
m,
float* b,
size_t
bstep,
int
n);
 
64CV_EXPORTS
int
LU64f(
double* A,
size_t
astep,
int
m,
double* b,
size_t
bstep,
int
n);
 
65CV_EXPORTS
bool
Cholesky32f(
float* A,
size_t
astep,
int
m,
float* b,
size_t
bstep,
int
n);
 
66CV_EXPORTS
bool
Cholesky64f(
double* A,
size_t
astep,
int
m,
double* b,
size_t
bstep,
int
n);
 
67CV_EXPORTS
void
SVD32f(
float* At,
size_t
astep,
float* W,
float* U,
size_t
ustep,
float* Vt,
size_t
vstep,
int
m,
int
n,
int
flags);
 
68CV_EXPORTS
void
SVD64f(
double* At,
size_t
astep,
double* W,
double* U,
size_t
ustep,
double* Vt,
size_t
vstep,
int
m,
int
n,
int
flags);
 
69CV_EXPORTS
int
QR32f(
float* A,
size_t
astep,
int
m,
int
n,
int
k,
float* b,
size_t
bstep,
float* hFactors);
 
70CV_EXPORTS
int
QR64f(
double* A,
size_t
astep,
int
m,
int
n,
int
k,
double* b,
size_t
bstep,
double* hFactors);
 
72CV_EXPORTS
void
gemm32f(
const
float* src1,
size_t
src1_step,
const
float* src2,
size_t
src2_step,
 
73
float
alpha,
const
float* src3,
size_t
src3_step,
float
beta,
float* dst,
size_t
dst_step,
 
74
int
m_a,
int
n_a,
int
n_d,
int
flags);
 
75CV_EXPORTS
void
gemm64f(
const
double* src1,
size_t
src1_step,
const
double* src2,
size_t
src2_step,
 
76
double
alpha,
const
double* src3,
size_t
src3_step,
double
beta,
double* dst,
size_t
dst_step,
 
77
int
m_a,
int
n_a,
int
n_d,
int
flags);
 
78CV_EXPORTS
void
gemm32fc(
const
float* src1,
size_t
src1_step,
const
float* src2,
size_t
src2_step,
 
79
float
alpha,
const
float* src3,
size_t
src3_step,
float
beta,
float* dst,
size_t
dst_step,
 
80
int
m_a,
int
n_a,
int
n_d,
int
flags);
 
81CV_EXPORTS
void
gemm64fc(
const
double* src1,
size_t
src1_step,
const
double* src2,
size_t
src2_step,
 
82
double
alpha,
const
double* src3,
size_t
src3_step,
double
beta,
double* dst,
size_t
dst_step,
 
83
int
m_a,
int
n_a,
int
n_d,
int
flags);
 
85CV_EXPORTS
int
normL1_(
const
uchar* a,
const
uchar* b,
int
n);
 
86CV_EXPORTS
float
normL1_(
const
float* a,
const
float* b,
int
n);
 
87CV_EXPORTS
float
normL2Sqr_(
const
float* a,
const
float* b,
int
n);
 
89CV_EXPORTS
void
exp32f(
const
float* src,
float* dst,
int
n);
 
90CV_EXPORTS
void
exp64f(
const
double* src,
double* dst,
int
n);
 
91CV_EXPORTS
void
log32f(
const
float* src,
float* dst,
int
n);
 
92CV_EXPORTS
void
log64f(
const
double* src,
double* dst,
int
n);
 
94CV_EXPORTS
void
fastAtan32f(
const
float* y,
const
float* x,
float* dst,
int
n,
bool
angleInDegrees);
 
95CV_EXPORTS
void
fastAtan64f(
const
double* y,
const
double* x,
double* dst,
int
n,
bool
angleInDegrees);
 
96CV_EXPORTS
void
magnitude32f(
const
float* x,
const
float* y,
float* dst,
int
n);
 
97CV_EXPORTS
void
magnitude64f(
const
double* x,
const
double* y,
double* dst,
int
n);
 
98CV_EXPORTS
void
sqrt32f(
const
float* src,
float* dst,
int
len);
 
99CV_EXPORTS
void
sqrt64f(
const
double* src,
double* dst,
int
len);
 
100CV_EXPORTS
void
invSqrt32f(
const
float* src,
float* dst,
int
len);
 
101CV_EXPORTS
void
invSqrt64f(
const
double* src,
double* dst,
int
len);
 
103CV_EXPORTS
void
split8u(
const
uchar* src, uchar** dst,
int
len,
int
cn );
 
104CV_EXPORTS
void
split16u(
const
ushort* src, ushort** dst,
int
len,
int
cn );
 
105CV_EXPORTS
void
split32s(
const
int* src,
int** dst,
int
len,
int
cn );
 
106CV_EXPORTS
void
split64s(
const
int64* src, int64** dst,
int
len,
int
cn );
 
108CV_EXPORTS
void
merge8u(
const
uchar** src, uchar* dst,
int
len,
int
cn );
 
109CV_EXPORTS
void
merge16u(
const
ushort** src, ushort* dst,
int
len,
int
cn );
 
110CV_EXPORTS
void
merge32s(
const
int** src,
int* dst,
int
len,
int
cn );
 
111CV_EXPORTS
void
merge64s(
const
int64** src, int64* dst,
int
len,
int
cn );
 
113CV_EXPORTS
void
add8u(
const
uchar* src1,
size_t
step1,
const
uchar* src2,
size_t
step2, uchar* dst,
size_t
step,
int
width,
int
height,
void* );
 
114CV_EXPORTS
void
add8s(
const
schar* src1,
size_t
step1,
const
schar* src2,
size_t
step2, schar* dst,
size_t
step,
int
width,
int
height,
void* );
 
115CV_EXPORTS
void
add16u(
const
ushort* src1,
size_t
step1,
const
ushort* src2,
size_t
step2, ushort* dst,
size_t
step,
int
width,
int
height,
void* );
 
116CV_EXPORTS
void
add16s(
const
short* src1,
size_t
step1,
const
short* src2,
size_t
step2,
short* dst,
size_t
step,
int
width,
int
height,
void* );
 
117CV_EXPORTS
void
add32s(
const
int* src1,
size_t
step1,
const
int* src2,
size_t
step2,
int* dst,
size_t
step,
int
width,
int
height,
void* );
 
118CV_EXPORTS
void
add32f(
const
float* src1,
size_t
step1,
const
float* src2,
size_t
step2,
float* dst,
size_t
step,
int
width,
int
height,
void* );
 
119CV_EXPORTS
void
add64f(
const
double* src1,
size_t
step1,
const
double* src2,
size_t
step2,
double* dst,
size_t
step,
int
width,
int
height,
void* );
 
121CV_EXPORTS
void
sub8u(
const
uchar* src1,
size_t
step1,
const
uchar* src2,
size_t
step2, uchar* dst,
size_t
step,
int
width,
int
height,
void* );
 
122CV_EXPORTS
void
sub8s(
const
schar* src1,
size_t
step1,
const
schar* src2,
size_t
step2, schar* dst,
size_t
step,
int
width,
int
height,
void* );
 
123CV_EXPORTS
void
sub16u(
const
ushort* src1,
size_t
step1,
const
ushort* src2,
size_t
step2, ushort* dst,
size_t
step,
int
width,
int
height,
void* );
 
124CV_EXPORTS
void
sub16s(
const
short* src1,
size_t
step1,
const
short* src2,
size_t
step2,
short* dst,
size_t
step,
int
width,
int
height,
void* );
 
125CV_EXPORTS
void
sub32s(
const
int* src1,
size_t
step1,
const
int* src2,
size_t
step2,
int* dst,
size_t
step,
int
width,
int
height,
void* );
 
126CV_EXPORTS
void
sub32f(
const
float* src1,
size_t
step1,
const
float* src2,
size_t
step2,
float* dst,
size_t
step,
int
width,
int
height,
void* );
 
127CV_EXPORTS
void
sub64f(
const
double* src1,
size_t
step1,
const
double* src2,
size_t
step2,
double* dst,
size_t
step,
int
width,
int
height,
void* );
 
129CV_EXPORTS
void
max8u(
const
uchar* src1,
size_t
step1,
const
uchar* src2,
size_t
step2, uchar* dst,
size_t
step,
int
width,
int
height,
void* );
 
130CV_EXPORTS
void
max8s(
const
schar* src1,
size_t
step1,
const
schar* src2,
size_t
step2, schar* dst,
size_t
step,
int
width,
int
height,
void* );
 
131CV_EXPORTS
void
max16u(
const
ushort* src1,
size_t
step1,
const
ushort* src2,
size_t
step2, ushort* dst,
size_t
step,
int
width,
int
height,
void* );
 
132CV_EXPORTS
void
max16s(
const
short* src1,
size_t
step1,
const
short* src2,
size_t
step2,
short* dst,
size_t
step,
int
width,
int
height,
void* );
 
133CV_EXPORTS
void
max32s(
const
int* src1,
size_t
step1,
const
int* src2,
size_t
step2,
int* dst,
size_t
step,
int
width,
int
height,
void* );
 
134CV_EXPORTS
void
max32f(
const
float* src1,
size_t
step1,
const
float* src2,
size_t
step2,
float* dst,
size_t
step,
int
width,
int
height,
void* );
 
135CV_EXPORTS
void
max64f(
const
double* src1,
size_t
step1,
const
double* src2,
size_t
step2,
double* dst,
size_t
step,
int
width,
int
height,
void* );
 
137CV_EXPORTS
void
min8u(
const
uchar* src1,
size_t
step1,
const
uchar* src2,
size_t
step2, uchar* dst,
size_t
step,
int
width,
int
height,
void* );
 
138CV_EXPORTS
void
min8s(
const
schar* src1,
size_t
step1,
const
schar* src2,
size_t
step2, schar* dst,
size_t
step,
int
width,
int
height,
void* );
 
139CV_EXPORTS
void
min16u(
const
ushort* src1,
size_t
step1,
const
ushort* src2,
size_t
step2, ushort* dst,
size_t
step,
int
width,
int
height,
void* );
 
140CV_EXPORTS
void
min16s(
const
short* src1,
size_t
step1,
const
short* src2,
size_t
step2,
short* dst,
size_t
step,
int
width,
int
height,
void* );
 
141CV_EXPORTS
void
min32s(
const
int* src1,
size_t
step1,
const
int* src2,
size_t
step2,
int* dst,
size_t
step,
int
width,
int
height,
void* );
 
142CV_EXPORTS
void
min32f(
const
float* src1,
size_t
step1,
const
float* src2,
size_t
step2,
float* dst,
size_t
step,
int
width,
int
height,
void* );
 
143CV_EXPORTS
void
min64f(
const
double* src1,
size_t
step1,
const
double* src2,
size_t
step2,
double* dst,
size_t
step,
int
width,
int
height,
void* );
 
145CV_EXPORTS
void
absdiff8u(
const
uchar* src1,
size_t
step1,
const
uchar* src2,
size_t
step2, uchar* dst,
size_t
step,
int
width,
int
height,
void* );
 
146CV_EXPORTS
void
absdiff8s(
const
schar* src1,
size_t
step1,
const
schar* src2,
size_t
step2, schar* dst,
size_t
step,
int
width,
int
height,
void* );
 
147CV_EXPORTS
void
absdiff16u(
const
ushort* src1,
size_t
step1,
const
ushort* src2,
size_t
step2, ushort* dst,
size_t
step,
int
width,
int
height,
void* );
 
148CV_EXPORTS
void
absdiff16s(
const
short* src1,
size_t
step1,
const
short* src2,
size_t
step2,
short* dst,
size_t
step,
int
width,
int
height,
void* );
 
149CV_EXPORTS
void
absdiff32s(
const
int* src1,
size_t
step1,
const
int* src2,
size_t
step2,
int* dst,
size_t
step,
int
width,
int
height,
void* );
 
150CV_EXPORTS
void
absdiff32f(
const
float* src1,
size_t
step1,
const
float* src2,
size_t
step2,
float* dst,
size_t
step,
int
width,
int
height,
void* );
 
151CV_EXPORTS
void
absdiff64f(
const
double* src1,
size_t
step1,
const
double* src2,
size_t
step2,
double* dst,
size_t
step,
int
width,
int
height,
void* );
 
153CV_EXPORTS
void
and8u(
const
uchar* src1,
size_t
step1,
const
uchar* src2,
size_t
step2, uchar* dst,
size_t
step,
int
width,
int
height,
void* );
 
154CV_EXPORTS
void
or8u(
const
uchar* src1,
size_t
step1,
const
uchar* src2,
size_t
step2, uchar* dst,
size_t
step,
int
width,
int
height,
void* );
 
155CV_EXPORTS
void
xor8u(
const
uchar* src1,
size_t
step1,
const
uchar* src2,
size_t
step2, uchar* dst,
size_t
step,
int
width,
int
height,
void* );
 
156CV_EXPORTS
void
not8u(
const
uchar* src1,
size_t
step1,
const
uchar* src2,
size_t
step2, uchar* dst,
size_t
step,
int
width,
int
height,
void* );
 
158CV_EXPORTS
void
cmp8u(
const
uchar* src1,
size_t
step1,
const
uchar* src2,
size_t
step2, uchar* dst,
size_t
step,
int
width,
int
height,
void* _cmpop);
 
159CV_EXPORTS
void
cmp8s(
const
schar* src1,
size_t
step1,
const
schar* src2,
size_t
step2, uchar* dst,
size_t
step,
int
width,
int
height,
void* _cmpop);
 
160CV_EXPORTS
void
cmp16u(
const
ushort* src1,
size_t
step1,
const
ushort* src2,
size_t
step2, uchar* dst,
size_t
step,
int
width,
int
height,
void* _cmpop);
 
161CV_EXPORTS
void
cmp16s(
const
short* src1,
size_t
step1,
const
short* src2,
size_t
step2, uchar* dst,
size_t
step,
int
width,
int
height,
void* _cmpop);
 
162CV_EXPORTS
void
cmp32s(
const
int* src1,
size_t
step1,
const
int* src2,
size_t
step2, uchar* dst,
size_t
step,
int
width,
int
height,
void* _cmpop);
 
163CV_EXPORTS
void
cmp32f(
const
float* src1,
size_t
step1,
const
float* src2,
size_t
step2, uchar* dst,
size_t
step,
int
width,
int
height,
void* _cmpop);
 
164CV_EXPORTS
void
cmp64f(
const
double* src1,
size_t
step1,
const
double* src2,
size_t
step2, uchar* dst,
size_t
step,
int
width,
int
height,
void* _cmpop);
 
166CV_EXPORTS
void
mul8u(
const
uchar* src1,
size_t
step1,
const
uchar* src2,
size_t
step2, uchar* dst,
size_t
step,
int
width,
int
height,
void* scale);
 
167CV_EXPORTS
void
mul8s(
const
schar* src1,
size_t
step1,
const
schar* src2,
size_t
step2, schar* dst,
size_t
step,
int
width,
int
height,
void* scale);
 
168CV_EXPORTS
void
mul16u(
const
ushort* src1,
size_t
step1,
const
ushort* src2,
size_t
step2, ushort* dst,
size_t
step,
int
width,
int
height,
void* scale);
 
169CV_EXPORTS
void
mul16s(
const
short* src1,
size_t
step1,
const
short* src2,
size_t
step2,
short* dst,
size_t
step,
int
width,
int
height,
void* scale);
 
170CV_EXPORTS
void
mul32s(
const
int* src1,
size_t
step1,
const
int* src2,
size_t
step2,
int* dst,
size_t
step,
int
width,
int
height,
void* scale);
 
171CV_EXPORTS
void
mul32f(
const
float* src1,
size_t
step1,
const
float* src2,
size_t
step2,
float* dst,
size_t
step,
int
width,
int
height,
void* scale);
 
172CV_EXPORTS
void
mul64f(
const
double* src1,
size_t
step1,
const
double* src2,
size_t
step2,
double* dst,
size_t
step,
int
width,
int
height,
void* scale);
 
174CV_EXPORTS
void
div8u(
const
uchar* src1,
size_t
step1,
const
uchar* src2,
size_t
step2, uchar* dst,
size_t
step,
int
width,
int
height,
void* scale);
 
175CV_EXPORTS
void
div8s(
const
schar* src1,
size_t
step1,
const
schar* src2,
size_t
step2, schar* dst,
size_t
step,
int
width,
int
height,
void* scale);
 
176CV_EXPORTS
void
div16u(
const
ushort* src1,
size_t
step1,
const
ushort* src2,
size_t
step2, ushort* dst,
size_t
step,
int
width,
int
height,
void* scale);
 
177CV_EXPORTS
void
div16s(
const
short* src1,
size_t
step1,
const
short* src2,
size_t
step2,
short* dst,
size_t
step,
int
width,
int
height,
void* scale);
 
178CV_EXPORTS
void
div32s(
const
int* src1,
size_t
step1,
const
int* src2,
size_t
step2,
int* dst,
size_t
step,
int
width,
int
height,
void* scale);
 
179CV_EXPORTS
void
div32f(
const
float* src1,
size_t
step1,
const
float* src2,
size_t
step2,
float* dst,
size_t
step,
int
width,
int
height,
void* scale);
 
180CV_EXPORTS
void
div64f(
const
double* src1,
size_t
step1,
const
double* src2,
size_t
step2,
double* dst,
size_t
step,
int
width,
int
height,
void* scale);
 
182CV_EXPORTS
void
recip8u(
const
uchar *,
size_t,
const
uchar * src2,
size_t
step2, uchar* dst,
size_t
step,
int
width,
int
height,
void* scale);
 
183CV_EXPORTS
void
recip8s(
const
schar *,
size_t,
const
schar * src2,
size_t
step2, schar* dst,
size_t
step,
int
width,
int
height,
void* scale);
 
184CV_EXPORTS
void
recip16u(
const
ushort *,
size_t,
const
ushort * src2,
size_t
step2, ushort* dst,
size_t
step,
int
width,
int
height,
void* scale);
 
185CV_EXPORTS
void
recip16s(
const
short
*,
size_t,
const
short
* src2,
size_t
step2,
short* dst,
size_t
step,
int
width,
int
height,
void* scale);
 
186CV_EXPORTS
void
recip32s(
const
int
*,
size_t,
const
int
* src2,
size_t
step2,
int* dst,
size_t
step,
int
width,
int
height,
void* scale);
 
187CV_EXPORTS
void
recip32f(
const
float
*,
size_t,
const
float
* src2,
size_t
step2,
float* dst,
size_t
step,
int
width,
int
height,
void* scale);
 
188CV_EXPORTS
void
recip64f(
const
double
*,
size_t,
const
double
* src2,
size_t
step2,
double* dst,
size_t
step,
int
width,
int
height,
void* scale);
 
190CV_EXPORTS
void
addWeighted8u(
const
uchar* src1,
size_t
step1,
const
uchar* src2,
size_t
step2, uchar* dst,
size_t
step,
int
width,
int
height,
void* _scalars );
 
191CV_EXPORTS
void
addWeighted8s(
const
schar* src1,
size_t
step1,
const
schar* src2,
size_t
step2, schar* dst,
size_t
step,
int
width,
int
height,
void* scalars );
 
192CV_EXPORTS
void
addWeighted16u(
const
ushort* src1,
size_t
step1,
const
ushort* src2,
size_t
step2, ushort* dst,
size_t
step,
int
width,
int
height,
void* scalars );
 
193CV_EXPORTS
void
addWeighted16s(
const
short* src1,
size_t
step1,
const
short* src2,
size_t
step2,
short* dst,
size_t
step,
int
width,
int
height,
void* scalars );
 
194CV_EXPORTS
void
addWeighted32s(
const
int* src1,
size_t
step1,
const
int* src2,
size_t
step2,
int* dst,
size_t
step,
int
width,
int
height,
void* scalars );
 
195CV_EXPORTS
void
addWeighted32f(
const
float* src1,
size_t
step1,
const
float* src2,
size_t
step2,
float* dst,
size_t
step,
int
width,
int
height,
void* scalars );
 
196CV_EXPORTS
void
addWeighted64f(
const
double* src1,
size_t
step1,
const
double* src2,
size_t
step2,
double* dst,
size_t
step,
int
width,
int
height,
void* scalars );
 
198CV_EXPORTS
void
cvt16f32f(
const
float16_t* src,
float* dst,
int
len );
 
199CV_EXPORTS
void
cvt32f16f(
const
float* src, float16_t* dst,
int
len );
 
201CV_EXPORTS
void
addRNGBias32f(
float* arr,
const
float* scaleBiasPairs,
int
len );
 
202CV_EXPORTS
void
addRNGBias64f(
double* arr,
const
double* scaleBiasPairs,
int
len );
 
206
static
Ptr<DFT1D>
create(
int
len,
int
count,
int
depth,
int
flags,
bool
* useBuffer = 0);
 
207
virtual
void
apply(
const
uchar *src, uchar *dst) = 0;
 
213
static
Ptr<DFT2D>
create(
int
width,
int
height,
int
depth,
 
214
int
src_channels,
int
dst_channels,
 
215
int
flags,
int
nonzero_rows = 0);
 
216
virtual
void
apply(
const
uchar *src_data,
size_t
src_step, uchar *dst_data,
size_t
dst_step) = 0;
 
222
static
Ptr<DCT2D>
create(
int
width,
int
height,
int
depth,
int
flags);
 
223
virtual
void
apply(
const
uchar *src_data,
size_t
src_step, uchar *dst_data,
size_t
dst_step) = 0;
 
234CV_EXPORTS
int
LU(
float* A,
size_t
astep,
int
m,
float* b,
size_t
bstep,
int
n);
 
235CV_EXPORTS
int
LU(
double* A,
size_t
astep,
int
m,
double* b,
size_t
bstep,
int
n);
 
236CV_EXPORTS
bool
Cholesky(
float* A,
size_t
astep,
int
m,
float* b,
size_t
bstep,
int
n);
 
237CV_EXPORTS
bool
Cholesky(
double* A,
size_t
astep,
int
m,
double* b,
size_t
bstep,
int
n);
 
239CV_EXPORTS
void
exp(
const
float* src,
float* dst,
int
n);
 
240CV_EXPORTS
void
exp(
const
double* src,
double* dst,
int
n);
 
241CV_EXPORTS
void
log(
const
float* src,
float* dst,
int
n);
 
242CV_EXPORTS
void
log(
const
double* src,
double* dst,
int
n);
 
244CV_EXPORTS
void
fastAtan2(
const
float* y,
const
float* x,
float* dst,
int
n,
bool
angleInDegrees);
 
245CV_EXPORTS
void
magnitude(
const
float* x,
const
float* y,
float* dst,
int
n);
 
246CV_EXPORTS
void
magnitude(
const
double* x,
const
double* y,
double* dst,
int
n);
 
247CV_EXPORTS
void
sqrt(
const
float* src,
float* dst,
int
len);
 
248CV_EXPORTS
void
sqrt(
const
double* src,
double* dst,
int
len);
 
249CV_EXPORTS
void
invSqrt(
const
float* src,
float* dst,
int
len);
 
250CV_EXPORTS
void
invSqrt(
const
double* src,
double* dst,
int
len);
 
CV_EXPORTS_W void sqrt(InputArray src, OutputArray dst)
Calculates a square root of array elements.
 
CV_EXPORTS_W void exp(InputArray src, OutputArray dst)
Calculates the exponent of every array element.
 
CV_EXPORTS_W void magnitude(InputArray x, InputArray y, OutputArray magnitude)
Calculates the magnitude of 2D vectors.
 
CV_EXPORTS_W void log(InputArray src, OutputArray dst)
Calculates the natural logarithm of every array element.
 
CV_EXPORTS int LU(float *A, size_t astep, int m, float *b, size_t bstep, int n)
 
CV_EXPORTS_W float fastAtan2(float y, float x)
Calculates the angle of a 2D vector in degrees.
 
CV_EXPORTS bool Cholesky(float *A, size_t astep, int m, float *b, size_t bstep, int n)
 
"black box" representation of the file storage associated with a file on disk.
Definition:
aruco.hpp:75
 
Definition:
cvstd_wrapper.hpp:74
 
Definition:
core/hal/hal.hpp:221
 
Definition:
core/hal/hal.hpp:205
 
Definition:
core/hal/hal.hpp:212