latest/amd_openvx_extensions/amd_winml/include/vx_ext_winml.h Source File

latest/amd_openvx_extensions/amd_winml/include/vx_ext_winml.h Source File#

MIVisionX: latest/amd_openvx_extensions/amd_winml/include/vx_ext_winml.h Source File
vx_ext_winml.h
Go to the documentation of this file.
1/*
2Copyright (c) 2019 - 2024 Advanced Micro Devices, Inc. All rights reserved.
3
4Permission is hereby granted, free of charge, to any person obtaining a copy
5of this software and associated documentation files (the "Software"), to deal
6in the Software without restriction, including without limitation the rights
7to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8copies of the Software, and to permit persons to whom the Software is
9furnished to do so, subject to the following conditions:
10
11The above copyright notice and this permission notice shall be included in
12all copies or substantial portions of the Software.
13
14THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20THE SOFTWARE.
21*/
22
23#ifndef _VX_AMD_EXT_WINML_H_
24#define _VX_AMD_EXT_WINML_H_
25
26#include "VX/vx.h"
27#include <VX/vx_compatibility.h>
28#include <vx_ext_amd.h>
29
41#ifndef dimof
47#define dimof(x) (sizeof(x) / sizeof(x[0]))
48#endif
49
50#if _WIN32
51#define SHARED_PUBLIC __declspec(dllexport)
52#else
56#define SHARED_PUBLIC __attribute__((visibility("default")))
57#endif
58
67
68#ifdef __cplusplus
69extern "C"
70{
71#endif
72
73 /*!***********************************************************************************************************
74 WinML VX_API_ENTRY C Function NODE
75 *************************************************************************************************************/
76
90 extern "C" SHARED_PUBLIC vx_node VX_API_CALL vxExtWinMLNode_OnnxToMivisionX(vx_graph graph, vx_scalar modelLocation, vx_scalar inputTensorName, vx_scalar outputTensorName, vx_tensor inputTensor, vx_array setupArray, vx_tensor outputTensor, vx_scalar deviceKind);
91
104
118 extern "C" SHARED_PUBLIC vx_node VX_API_CALL vxExtWinMLNode_getTopKLabels(vx_graph graph, vx_tensor prob_tensor, vx_scalar labelFile, vx_scalar output_1, vx_scalar output_2, vx_scalar output_3, vx_scalar output_4, vx_scalar output_5);
119
120#ifdef __cplusplus
121}
122#endif
123
124#endif
SHARED_PUBLIC vx_node VX_API_CALL vxExtWinMLNode_OnnxToMivisionX(vx_graph graph, vx_scalar modelLocation, vx_scalar inputTensorName, vx_scalar outputTensorName, vx_tensor inputTensor, vx_array setupArray, vx_tensor outputTensor, vx_scalar deviceKind)
[Graph] Creates a WinML import ONNX Model and run function node.
SHARED_PUBLIC vx_node VX_API_CALL vxExtWinMLNode_getTopKLabels(vx_graph graph, vx_tensor prob_tensor, vx_scalar labelFile, vx_scalar output_1, vx_scalar output_2, vx_scalar output_3, vx_scalar output_4, vx_scalar output_5)
[Graph] Creates a output tensor to Top K labels node.
SHARED_PUBLIC vx_node VX_API_CALL vxExtWinMLNode_convertImageToTensor(vx_graph graph, vx_image input, vx_tensor output, vx_scalar a, vx_scalar b, vx_scalar reverse_channel_order)
[Graph] Creates a WinML convert image to tensor node.
The top level OpenVX Header.
The AMD OpenVX Extension Library.
vx_node vxCreateNodeByStructure(vx_graph graph, vx_enum kernelenum, vx_reference params[], vx_uint32 num)
Creates a node in a graph using a predefined kernel structure.
#define SHARED_PUBLIC
A macro to specify public visibility for shared library symbols.
Definition vx_ext_winml.h:56
struct _vx_reference * vx_reference
A generic opaque reference to any object within OpenVX.
Definition vx_types.h:145
struct _vx_scalar * vx_scalar
An opaque reference to a scalar.
Definition vx_types.h:175
uint32_t vx_uint32
A 32-bit unsigned value.
Definition vx_types.h:85
struct _vx_tensor_t * vx_tensor
The multidimensional data object (Tensor).
Definition vx_types.h:287
int32_t vx_enum
Sets the standard enumeration type size to be a fixed quantity.
Definition vx_types.h:152
struct _vx_graph * vx_graph
An opaque reference to a graph.
Definition vx_types.h:211
struct _vx_node * vx_node
An opaque reference to a kernel node.
Definition vx_types.h:204
#define VX_API_CALL
Defines calling convention for OpenVX API.
Definition vx_types.h:56
struct _vx_array * vx_array
The Array Object. Array is a strongly-typed container for other data structures.
Definition vx_types.h:275
struct _vx_image * vx_image
An opaque reference to an image.
Definition vx_types.h:182