SoOpenCL Class Reference
[OpenCL device]

VSG extension OpenCL module API More...

#include <Inventor/OpenCL/SoOpenCL.h>

List of all members.

Classes

struct  SoOpenCLModule
 Defines a OpenCL module.

Public Types

enum  SoOpenCLError {
  SO_OPENCL_SUCCESS,
  SO_OPENCL_MODULE_LOAD_ERROR,
  SO_OPENCL_MODULE_FUNCTION_ERROR,
  SO_OPENCL_INVALID_PARAMETER,
  SO_OPENCL_INVALID_CONTEXT
}

Static Public Member Functions

static void init ()
static void finish ()
static bool isInitialized ()
static SbBool isAvailable ()
static SoOpenCLError loadSourceModule (const SbString &filename, const SbString &moduleName)
static SoOpenCLHandle * findFunction (const SbString &moduleName, const SbString &functionName)
static SoOpenCLError findFunction (SoOpenCLHandle *handle, const SbString &moduleName, const SbString &functionName)

Detailed Description

VSG extension OpenCL module API

The Inventor OpenCL module provides a set of useful functions for OpenCL development including memory managment, module handling and device managment functions.

NOTE: The classes in this module do not exist in Open Inventor 10.0 and later.

This module also provides built-in OpenCL functions to quickly integrate in your application the OpenCL functions useful to improve your computing performences.

The integrated modules are organized in different topics:

USAGE

NOTES

EXAMPLE

SEE ALSO

SoOpenCLApi, SoOpenCLContext, SoOpenCLDevice, SoOpenCLBufferObject,

See related examples:

HelloOpenCL, SimpleOpenCLKernel


Member Enumeration Documentation

This enum defines the possible errors returned by the OpenCL API.

Enumerator:
SO_OPENCL_SUCCESS 

No error, the operation is a success.

SO_OPENCL_MODULE_LOAD_ERROR 

Error: The specified module cannot be loaded.

SO_OPENCL_MODULE_FUNCTION_ERROR 

Error: The specified function cannot be loaded.

SO_OPENCL_INVALID_PARAMETER 

Error: One of the specified paramaters is invalid.

SO_OPENCL_INVALID_CONTEXT 

This error indicates that there is no valid OpenCL context to perform the requested operation.


See the SoOpenCLContext class to create a OpenCL context.


Member Function Documentation

static SoOpenCLError SoOpenCL::findFunction ( SoOpenCLHandle *  handle,
const SbString moduleName,
const SbString functionName 
) [static]

This function resolves a specific function in a specified module.

Parameters:
handle The handle which is updated with the function pointer.
moduleName The name of the module which is supposed to contain the function.
functionName The name of the function to resolve.
Returns:
An error code.
static SoOpenCLHandle* SoOpenCL::findFunction ( const SbString moduleName,
const SbString functionName 
) [static]

This function resolves a specific function in a specified module.

Parameters:
moduleName The name of the module which is supposed to contain the function.
functionName The name of the function to resolve.
Returns:
A OpenCL handle on the function, or NULL if the function was not found!
static void SoOpenCL::finish (  )  [static]

Unload the OpenCL module and free the data.

static void SoOpenCL::init (  )  [static]

Initialize the OpenCL module.

static SbBool SoOpenCL::isAvailable (  )  [static]

This function indicates if OpenCL is available on this platform.

Returns:
True if at least one OpenCL enabled device is available in the system.
static bool SoOpenCL::isInitialized (  )  [static]

Returns TRUE if module is currently initialized.

static SoOpenCLError SoOpenCL::loadSourceModule ( const SbString filename,
const SbString moduleName 
) [static]

This function loads a cubin file and register it in the list of modules.

Parameters:
filename The cubin filename.
moduleName The name of the module linked to the file.
Returns:
An error code is returned on error, 0 means no error.

The documentation for this class was generated from the following file:

Open Inventor by FEI reference manual, generated on 19 Aug 2019
Copyright © FEI S.A.S. All rights reserved.
http://www.openinventor.com/