Program Listing for File OpenclArgChains.hpp
↰ Return to documentation for file (PDJE-Godot-Plugin/Project-DJ-Engine/include/util/function/stft/OpenclArgChains.hpp)
#pragma once
#define setArgChain1(KERNEL, _A, _GSIZE, _LSIZE) \
KERNEL->setArg(0, _A); \
CQ->enqueueNDRangeKernel( \
KERNEL.value(), NullRange, NDRange(_GSIZE), NDRange(_LSIZE));
#define setArgChain2(KERNEL, _A, _B, _GSIZE, _LSIZE) \
KERNEL->setArg(0, _A); \
KERNEL->setArg(1, _B); \
CQ->enqueueNDRangeKernel( \
KERNEL.value(), NullRange, NDRange(_GSIZE), NDRange(_LSIZE));
#define setArgChain3(KERNEL, _A, _B, _C, _GSIZE, _LSIZE) \
KERNEL->setArg(0, _A); \
KERNEL->setArg(1, _B); \
KERNEL->setArg(2, _C); \
CQ->enqueueNDRangeKernel( \
KERNEL.value(), NullRange, NDRange(_GSIZE), NDRange(_LSIZE));
#define setArgChain4(KERNEL, _A, _B, _C, _D, _GSIZE, _LSIZE) \
KERNEL->setArg(0, _A); \
KERNEL->setArg(1, _B); \
KERNEL->setArg(2, _C); \
KERNEL->setArg(3, _D); \
CQ->enqueueNDRangeKernel( \
KERNEL.value(), NullRange, NDRange(_GSIZE), NDRange(_LSIZE));
#define setArgChain5(KERNEL, _A, _B, _C, _D, _E, _GSIZE, _LSIZE) \
KERNEL->setArg(0, _A); \
KERNEL->setArg(1, _B); \
KERNEL->setArg(2, _C); \
KERNEL->setArg(3, _D); \
KERNEL->setArg(4, _E); \
CQ->enqueueNDRangeKernel( \
KERNEL.value(), NullRange, NDRange(_GSIZE), NDRange(_LSIZE));
#define setArgChain6(KERNEL, _A, _B, _C, _D, _E, _F, _GSIZE, _LSIZE) \
KERNEL->setArg(0, _A); \
KERNEL->setArg(1, _B); \
KERNEL->setArg(2, _C); \
KERNEL->setArg(3, _D); \
KERNEL->setArg(4, _E); \
KERNEL->setArg(5, _F); \
CQ->enqueueNDRangeKernel( \
KERNEL.value(), NullRange, NDRange(_GSIZE), NDRange(_LSIZE));
#define setArgChain7(KERNEL, _A, _B, _C, _D, _E, _F, _G, _GSIZE, _LSIZE) \
KERNEL->setArg(0, _A); \
KERNEL->setArg(1, _B); \
KERNEL->setArg(2, _C); \
KERNEL->setArg(3, _D); \
KERNEL->setArg(4, _E); \
KERNEL->setArg(5, _F); \
KERNEL->setArg(6, _G); \
CQ->enqueueNDRangeKernel( \
KERNEL.value(), NullRange, NDRange(_GSIZE), NDRange(_LSIZE));
#define setArgChain8(KERNEL, _A, _B, _C, _D, _E, _F, _G, _H, _GSIZE, _LSIZE) \
KERNEL->setArg(0, _A); \
KERNEL->setArg(1, _B); \
KERNEL->setArg(2, _C); \
KERNEL->setArg(3, _D); \
KERNEL->setArg(4, _E); \
KERNEL->setArg(5, _F); \
KERNEL->setArg(6, _G); \
KERNEL->setArg(7, _H); \
CQ->enqueueNDRangeKernel( \
KERNEL.value(), NullRange, NDRange(_GSIZE), NDRange(_LSIZE));
#define setArgChain9( \
KERNEL, _A, _B, _C, _D, _E, _F, _G, _H, _I, _GSIZE, _LSIZE) \
KERNEL->setArg(0, _A); \
KERNEL->setArg(1, _B); \
KERNEL->setArg(2, _C); \
KERNEL->setArg(3, _D); \
KERNEL->setArg(4, _E); \
KERNEL->setArg(5, _F); \
KERNEL->setArg(6, _G); \
KERNEL->setArg(7, _H); \
KERNEL->setArg(8, _I); \
CQ->enqueueNDRangeKernel( \
KERNEL.value(), NullRange, NDRange(_GSIZE), NDRange(_LSIZE));
#define setArgChain10( \
KERNEL, _A, _B, _C, _D, _E, _F, _G, _H, _I, _J, _GSIZE, _LSIZE) \
KERNEL->setArg(0, _A); \
KERNEL->setArg(1, _B); \
KERNEL->setArg(2, _C); \
KERNEL->setArg(3, _D); \
KERNEL->setArg(4, _E); \
KERNEL->setArg(5, _F); \
KERNEL->setArg(6, _G); \
KERNEL->setArg(7, _H); \
KERNEL->setArg(8, _I); \
KERNEL->setArg(9, _J); \
CQ->enqueueNDRangeKernel( \
KERNEL.value(), NullRange, NDRange(_GSIZE), NDRange(_LSIZE));
#define setArgChain11( \
KERNEL, _A, _B, _C, _D, _E, _F, _G, _H, _I, _J, _K, _GSIZE, _LSIZE) \
KERNEL->setArg(0, _A); \
KERNEL->setArg(1, _B); \
KERNEL->setArg(2, _C); \
KERNEL->setArg(3, _D); \
KERNEL->setArg(4, _E); \
KERNEL->setArg(5, _F); \
KERNEL->setArg(6, _G); \
KERNEL->setArg(7, _H); \
KERNEL->setArg(8, _I); \
KERNEL->setArg(9, _J); \
KERNEL->setArg(10, _K); \
CQ->enqueueNDRangeKernel( \
KERNEL.value(), NullRange, NDRange(_GSIZE), NDRange(_LSIZE));