packages
ti
vxlib
src
vx
VXLIB_multiply_i16s_i16s_o16s
bam_plugin
BAM_VXLIB_multiply_i16s_i16s_o16s.h
Go to the documentation of this file.
1
/*******************************************************************************
2
**+--------------------------------------------------------------------------+**
3
**| **** |**
4
**| **** |**
5
**| ******o*** |**
6
**| ********_///_**** |**
7
**| ***** /_//_/ **** |**
8
**| ** ** (__/ **** |**
9
**| ********* |**
10
**| **** |**
11
**| *** |**
12
**| |**
13
**| Copyright (c) 2017 Texas Instruments Incorporated |**
14
**| |**
15
**| All rights reserved not granted herein. |**
16
**| |**
17
**| Limited License. |**
18
**| |**
19
**| Texas Instruments Incorporated grants a world-wide, royalty-free, |**
20
**| non-exclusive license under copyrights and patents it now or |**
21
**| hereafter owns or controls to make, have made, use, import, offer to |**
22
**| sell and sell ("Utilize") this software subject to the terms herein. |**
23
**| With respect to the foregoing patent license, such license is granted |**
24
**| solely to the extent that any such patent is necessary to Utilize the |**
25
**| software alone. The patent license shall not apply to any |**
26
**| combinations which include this software, other than combinations |**
27
**| with devices manufactured by or for TI ("TI Devices"). No hardware |**
28
**| patent is licensed hereunder. |**
29
**| |**
30
**| Redistributions must preserve existing copyright notices and |**
31
**| reproduce this license (including the above copyright notice and the |**
32
**| disclaimer and (if applicable) source code license limitations below) |**
33
**| in the documentation and/or other materials provided with the |**
34
**| distribution |**
35
**| |**
36
**| Redistribution and use in binary form, without modification, are |**
37
**| permitted provided that the following conditions are met: |**
38
**| |**
39
**| * No reverse engineering, decompilation, or disassembly of this |**
40
**| software is permitted with respect to any software provided in binary |**
41
**| form. |**
42
**| |**
43
**| * any redistribution and use are licensed by TI for use only with |**
44
**| TI Devices. |**
45
**| |**
46
**| * Nothing shall obligate TI to provide you with source code for |**
47
**| the software licensed and provided to you in object code. |**
48
**| |**
49
**| If software source code is provided to you, modification and |**
50
**| redistribution of the source code are permitted provided that the |**
51
**| following conditions are met: |**
52
**| |**
53
**| * any redistribution and use of the source code, including any |**
54
**| resulting derivative works, are licensed by TI for use only with TI |**
55
**| Devices. |**
56
**| |**
57
**| * any redistribution and use of any object code compiled from the |**
58
**| source code and any resulting derivative works, are licensed by TI |**
59
**| for use only with TI Devices. |**
60
**| |**
61
**| Neither the name of Texas Instruments Incorporated nor the names of |**
62
**| its suppliers may be used to endorse or promote products derived from |**
63
**| this software without specific prior written permission. |**
64
**| |**
65
**| DISCLAIMER. |**
66
**| |**
67
**| THIS SOFTWARE IS PROVIDED BY TI AND TI'S LICENSORS "AS IS" AND ANY |**
68
**| EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |**
69
**| IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR |**
70
**| PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL TI AND TI'S LICENSORS BE |**
71
**| LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |**
72
**| CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |**
73
**| SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR |**
74
**| BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, |**
75
**| WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE |**
76
**| OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, |**
77
**| EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |**
78
**+--------------------------------------------------------------------------+**
79
*******************************************************************************/
80
81
#ifndef BAM_VXLIB_MULTIPLY_I16S_I16SU_O16S_H_
82
#define BAM_VXLIB_MULTIPLY_I16S_I16SU_O16S_H_
83
84
#include "bam_common.h"
85
#include "../../../common/VXLIB_types.h"
86
87
typedef
struct
88
{
89
uint16_t
overflow_policy
;
90
VXLIB_F32
scale_factor
;
91
}
BAM_VXLIB_multiply_i16s_i16s_o16s_params
;
92
93
typedef
struct
94
{
95
VXLIB_bufParams2D_t bufParams[3];
96
BAM_VXLIB_multiply_i16s_i16s_o16s_params
params
;
97
}
BAM_VXLIB_multiply_i16s_i16s_o16s_Args
;
98
99
extern
BAM_KernelInfo
gBAM_VXLIB_multiply_i16s_i16s_o16s_kernel
;
100
extern
BAM_KernelHelperFuncDef
gBAM_VXLIB_multiply_i16s_i16s_o16s_helperFunc
;
101
extern
BAM_KernelExecFuncDef
gBAM_VXLIB_multiply_i16s_i16s_o16s_execFunc
;
102
103
typedef
enum
104
{
105
BAM_VXLIB_MULTIPLY_I16S_I16SU_O16S_INPUT0_IMAGE_PORT
= 0,
106
BAM_VXLIB_MULTIPLY_I16S_I16SU_O16S_INPUT1_IMAGE_PORT
,
107
BAM_VXLIB_MULTIPLY_I16S_I16SU_O16S_NUM_INPUT_BLOCKS
108
}
eBAM_VXLIB_MULTIPLY_I16S_I16SU_O16S_INPUT_PORTS
;
109
110
typedef
enum
111
{
112
BAM_VXLIB_MULTIPLY_I16S_I16SU_O16S_OUTPUT_PORT
= 0,
113
BAM_VXLIB_MULTIPLY_I16S_I16SU_O16S_NUM_OUTPUT_BLOCKS
114
}
eBAM_VXLIB_MULTIPLY_I16S_I16SU_O16S_OUTPUT_PORTS
;
115
116
void
BAM_VXLIB_multiply_i16s_i16s_o16s_getKernelInfo
(
void
*kernelArgs,
117
BAM_KernelInfo *kernelInfo);
118
119
#endif
/* BAM_VXLIB_MULTIPLY_I16S_I16SU_O16S_H_ */
BAM_VXLIB_MULTIPLY_I16S_I16SU_O16S_INPUT0_IMAGE_PORT
Definition:
BAM_VXLIB_multiply_i16s_i16s_o16s.h:105
BAM_VXLIB_multiply_i16s_i16s_o16s_Args::params
BAM_VXLIB_multiply_i16s_i16s_o16s_params params
Definition:
BAM_VXLIB_multiply_i16s_i16s_o16s.h:96
gBAM_VXLIB_multiply_i16s_i16s_o16s_kernel
BAM_KernelInfo gBAM_VXLIB_multiply_i16s_i16s_o16s_kernel
BAM_VXLIB_multiply_i16s_i16s_o16s_params
Definition:
BAM_VXLIB_multiply_i16s_i16s_o16s.h:87
BAM_VXLIB_multiply_i16s_i16s_o16s_params::scale_factor
VXLIB_F32 scale_factor
Definition:
BAM_VXLIB_multiply_i16s_i16s_o16s.h:90
BAM_VXLIB_MULTIPLY_I16S_I16SU_O16S_INPUT1_IMAGE_PORT
Definition:
BAM_VXLIB_multiply_i16s_i16s_o16s.h:106
BAM_VXLIB_multiply_i16s_i16s_o16s_params::overflow_policy
uint16_t overflow_policy
Definition:
BAM_VXLIB_multiply_i16s_i16s_o16s.h:89
gBAM_VXLIB_multiply_i16s_i16s_o16s_helperFunc
BAM_KernelHelperFuncDef gBAM_VXLIB_multiply_i16s_i16s_o16s_helperFunc
gBAM_VXLIB_multiply_i16s_i16s_o16s_execFunc
BAM_KernelExecFuncDef gBAM_VXLIB_multiply_i16s_i16s_o16s_execFunc
BAM_VXLIB_multiply_i16s_i16s_o16s_getKernelInfo
void BAM_VXLIB_multiply_i16s_i16s_o16s_getKernelInfo(void *kernelArgs, BAM_KernelInfo *kernelInfo)
eBAM_VXLIB_MULTIPLY_I16S_I16SU_O16S_INPUT_PORTS
eBAM_VXLIB_MULTIPLY_I16S_I16SU_O16S_INPUT_PORTS
Definition:
BAM_VXLIB_multiply_i16s_i16s_o16s.h:103
BAM_VXLIB_multiply_i16s_i16s_o16s_Args
Definition:
BAM_VXLIB_multiply_i16s_i16s_o16s.h:93
BAM_VXLIB_MULTIPLY_I16S_I16SU_O16S_NUM_OUTPUT_BLOCKS
Definition:
BAM_VXLIB_multiply_i16s_i16s_o16s.h:113
eBAM_VXLIB_MULTIPLY_I16S_I16SU_O16S_OUTPUT_PORTS
eBAM_VXLIB_MULTIPLY_I16S_I16SU_O16S_OUTPUT_PORTS
Definition:
BAM_VXLIB_multiply_i16s_i16s_o16s.h:110
BAM_VXLIB_MULTIPLY_I16S_I16SU_O16S_OUTPUT_PORT
Definition:
BAM_VXLIB_multiply_i16s_i16s_o16s.h:112
BAM_VXLIB_MULTIPLY_I16S_I16SU_O16S_NUM_INPUT_BLOCKS
Definition:
BAM_VXLIB_multiply_i16s_i16s_o16s.h:107
Copyright 2024, Texas Instruments Incorporated