168 OPEN_NET_PUBLIC
virtual ~Kernel ();
169 OPEN_NET_PUBLIC
virtual Status
AppendCode (
const char * aCode,
unsigned int aCodeSize_byte);
170 OPEN_NET_PUBLIC
virtual Status
ResetCode ();
171 OPEN_NET_PUBLIC
virtual Status
SetCode (
const char * aFileName);
172 OPEN_NET_PUBLIC
virtual Status
SetCode (
const char * aCode,
unsigned int aCodeSize_byte);
173 OPEN_NET_PUBLIC
virtual Status
Display (FILE * aOut)
const;
174 OPEN_NET_PUBLIC
virtual unsigned int Edit_Remove (
const char * aSearch);
175 OPEN_NET_PUBLIC
virtual unsigned int Edit_Replace(
const char * aSearch,
const char * aReplace);
178 OPEN_NET_PUBLIC
virtual Status
GetStatistics (
unsigned int * aOut,
unsigned int aOutSize_byte,
unsigned int * aInfo_byte,
bool aReset);
183 void ResetCommandQueue();
185 void SetCommandQueue(
void * aCommandQueue);
187 void AddStatistics( Event * aEvent );
189 void * AllocateBuildLog();
190 char * AllocateBuildLog(
size_t aSize_byte );
194 typedef std::map< unsigned int, UserBuffer * > UserArgumentMap;
198 const Kernel & operator = (
const Kernel &);
200 void CodeLines_Count ();
201 void CodeLines_Generate();
210 char * mCodeLineBuffer ;
211 unsigned int mCodeLineCount ;
212 const char ** mCodeLines ;
213 void * mCommandQueue ;
214 bool mProfilingEnabled ;
215 unsigned int * mStatistics ;
216 uint64_t mStatisticsSums[3];
218 UserArgumentMap mUserArguments;
227 return mProfilingEnabled;
virtual OPEN_NET_PUBLIC unsigned int Edit_Replace(const char *aSearch, const char *aReplace)
Replace strings in code.
OPEN_NET_PUBLIC Status SetStaticUserArgument(unsigned int aIndex, UserBuffer *aArg)
Add a user argument always passed to the kernel.
OPEN_NET_PUBLIC void * GetCommandQueue()
Retrieve the command queue running this kernel.
OpenNet::StatisticsProvider.
virtual OPEN_NET_PUBLIC unsigned int Edit_Remove(const char *aSearch)
Remove strings from code.
The Kernel class.
Definition: Kernel.h:38
The SourceCode class.
Definition: SourceCode.h:30
OPEN_NET_PUBLIC bool IsProfilingEnabled() const
Is the OpenCL profiling enabled?
Definition: Kernel.h:225
virtual OPEN_NET_PUBLIC Status AppendCode(const char *aCode, unsigned int aCodeSize_byte)
Appen code.
OPEN_NET_PUBLIC Status EnableProfiling()
Enable OpenCL profiling.
OPEN_NET_PUBLIC unsigned int GetCodeLineCount()
Retrieve the code line count.
virtual OPEN_NET_PUBLIC Status ResetCode()
Reset the code.
virtual OPEN_NET_PUBLIC Status ResetStatistics()
This methode resets the statistics of the adapter.
OPEN_NET_PUBLIC Kernel()
Constructor.
OPEN_NET_PUBLIC const char * GetBuildLog() const
Retrieve the build log.
The UserBuffer class.
Definition: UserBuffer.h:29
OPEN_NET_PUBLIC Status DisableProfiling()
Disable OpenCL profiling.
virtual OPEN_NET_PUBLIC Status GetStatistics(unsigned int *aOut, unsigned int aOutSize_byte, unsigned int *aInfo_byte, bool aReset)
This methode return the statistics of the adapter.
The StatisticsProvider class.
Definition: StatisticsProvider.h:30
OPEN_NET_PUBLIC const char ** GetCodeLines()
Retrieve the code lines.
virtual OPEN_NET_PUBLIC Status SetCode(const char *aFileName)
Set the code using a source file.
virtual OPEN_NET_PUBLIC void SetUserKernelArgs(void *aKernel)
Called to add user arguments to the kernel.
virtual OPEN_NET_PUBLIC Status Display(FILE *aOut) const
Display.