24 #ifndef ACLELEMENTSYNCCOPY_H
25 #define ACLELEMENTSYNCCOPY_H
27 #include "../aclElementBase.h"
33 class ElementSyncCopy:
public ElementBase
40 static unsigned int syncCopyNum;
41 string kernelSourceStr;
54 vector<Element> & localDeclarations)
const;
virtual string str(const KernelConfiguration &kernelConfig) const
virtual string getLocalDeclaration(const KernelConfiguration &kernelConfig) const
virtual void setAsArgument(cl::Kernel &kernel, unsigned int argumentIndex) const
virtual string getName() const
virtual void addToKernelSource(vector< Element > &arguments, vector< Element > &localDeclarations) const
virtual string getTypeSignature(const KernelConfiguration &kernelConfig) const
ElementSyncCopy(Element source_, Element destination_, Element srcOffset, Element dstOffset, Element length_)
ACL Kernel configuration class.
Class interface for cl_kernel.
Advanced Computational Language.
std::shared_ptr< ElementBase > Element