89 const char* kernelName =
nullptr;
91 #if defined(__PXCC_ANALYSIS__)
92 kernelName =
"__pxcc_placeholder__";
95 "Kernel function not found in KernelTraits — was it compiled with pxcc?");
Defines a function to be executed by each thread on the MU.
A container for Function of MU kernel binary.
virtual ~Module()=default
Function * createFunction()
Creates a Function object via compile-time KernelTraits lookup.
Module & operator=(const Module &)=delete
Deleted copy assignment operator.
virtual std::string getMuBinaryPath() const =0
Gets the binary path of the module.
virtual uint32_t getNumMuFunctions() const =0
Gets the number of functions in the module.
virtual std::vector< std::string > getMuFunctionList() const =0
Gets the name of MU functions in the module.
virtual Function * createFunction(const char *muFuncName)=0
Creates a Function object from the specified function name.
Module(const Module &)=delete
Deleted copy constructor.
virtual void destroyFunction(Function *function)=0
Destroys the specified Function object.
void destroyModule(Module *module)
Destroys the specified Module object.
Module * createModule(const char *muBinaryPath)
Creates a Module object from the specified MU binary path.
void registerKernelBinary(const void *start, const void *end)
Registers an embedded kernel binary for automatic loading.
Traits class that maps a kernel function pointer to its name string.