forked from shobana-mcw/MIVisionX
-
Notifications
You must be signed in to change notification settings - Fork 0
/
vx.h
95 lines (79 loc) · 2.96 KB
/
vx.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
/*
* Copyright (c) 2012-2020 The Khronos Group Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/*
* NOTE: Some safety-critical environments may enforce software development
* guidelines (for example MISRA C:2012) to facilitate code quality,
* safety, security, portability and reliability. In order to meet
* such guidelines, developers may modify OpenVX standard header files
* without deviating from the OpenVX specification.
*/
#ifndef _OPENVX_H_
#define _OPENVX_H_
/*!
* \file
* \brief The top level OpenVX Header.
*/
/*! \brief Defines the length of the implementation name string, including the trailing zero.
* \ingroup group_context
*/
#define VX_MAX_IMPLEMENTATION_NAME (64)
/*! \brief Defines the length of a kernel name string to be added to OpenVX, including the trailing zero.
* \ingroup group_kernel
*/
#define VX_MAX_KERNEL_NAME (256)
/*! \brief Defines the length of a message buffer to copy from the log, including the trailing zero.
* \ingroup group_basic_features
*/
#define VX_MAX_LOG_MESSAGE_LEN (1024)
/*! \brief Defines the length of the reference name string, including the trailing zero.
* \ingroup group_reference
* \see vxSetReferenceName
*/
#define VX_MAX_REFERENCE_NAME (64)
#include <VX/vx_vendors.h>
#include <VX/vx_types.h>
#include <VX/vx_kernels.h>
#include <VX/vx_api.h>
#include <VX/vx_nodes.h>
/*! \brief Defines the major version number macro.
* \ingroup group_basic_features
*/
#define VX_VERSION_MAJOR(x) ((vx_uint32)((vx_uint32)(x) & 0xFFU) << 8)
/*! \brief Defines the minor version number macro.
* \ingroup group_basic_features
*/
#define VX_VERSION_MINOR(x) ((vx_uint32)((vx_uint32)(x) & 0xFFU) << 0)
/*! \brief Defines the predefined version number for 1.0.
* \ingroup group_basic_features
*/
#define VX_VERSION_1_0 (VX_VERSION_MAJOR(1) | VX_VERSION_MINOR(0))
/*! \brief Defines the predefined version number for 1.1.
* \ingroup group_basic_features
*/
#define VX_VERSION_1_1 (VX_VERSION_MAJOR(1) | VX_VERSION_MINOR(1))
/*! \brief Defines the predefined version number for 1.2.
* \ingroup group_basic_features
*/
#define VX_VERSION_1_2 (VX_VERSION_MAJOR(1) | VX_VERSION_MINOR(2))
/*! \brief Defines the predefined version number for 1.3.
* \ingroup group_basic_features
*/
#define VX_VERSION_1_3 (VX_VERSION_MAJOR(1) | VX_VERSION_MINOR(3))
/*! \brief Defines the OpenVX Version Number.
* \ingroup group_basic_features
*/
#define VX_VERSION (VX_VERSION_1_3)
#endif