23#if !defined SOALGORITHMS_H
27#pragma warning( push )
28#pragma warning(disable:4251)
32#include <Inventor/SbString.h>
33#include <Inventor/algorithms/SoAlgorithmsDefs.h>
34#include <Inventor/STL/vector>
35#include <Inventor/threads/SbThreadMutex.h>
37#include <Inventor/SoModule.h>
57#define DECLARE_ALGORITHMS_MODULE( CLASS_NAME ) \
58 extern "C" VC_DLL_EXPORT SoAlgorithms* createAlgorithmsInterface() \
61 return new CLASS_NAME(); \
197 virtual SoLDMAlgorithms* createLDMAlgorithmsInterface();
211 unsigned int refCount;
215 static std::vector< Module* > s_loadedModules;
218 static int s_initRefCount;
222#pragma warning( pop )
Class for smart character strings.
<a href="IconLegend.html"><img src="extTGS.gif" alt="VSG extension" border="0"></a> Portable mutex c...
<a href="IconLegend.html"><img src="extTGS.gif" alt="VSG extension" border="0"></a> Utility function...
static SbBool unloadAlgorithmsModule(const SbString &moduleFileName)
Unloads a module.
virtual SoSeismic * createSeismicInterface()
Returns an instance of the SoSeismic interface defined in the loaded module.
virtual SoConversion * createConversionInterface()
Returns an instance of the SoConversion interface defined in the loaded module.
static SoAlgorithms * loadAlgorithmsModule(const SbString &moduleFileName)
Loads a module and returns an instance of the implementation of SoAlgorithms in this module.
virtual ~SoAlgorithms()
Algorithms interface destructor.
virtual SoBufferObject * createBufferObject()
Returns an instance of a SoBufferObject according to the hardware used by the loaded module.
virtual SoArithmetic * createArithmeticInterface()
Returns an instance of the SoArithmetic interface defined in the loaded module.
virtual SoConvolution * createConvolutionInterface()
Returns an instance of the SoConvolution interface defined in the loaded module.
static void finish()
Static finish function to free the memory allocated by the algorithms module.
virtual SoDeviceContext * createContext()
Returns a DeviceContext that can be used with the algorithms module and SoBufferObject returned by th...
static void init()
Static init function to initialize the algorithms module.
virtual SoDataExtract * createDataExtractInterface()
Returns an instance of the SoDataExtract interface defined in the loaded module.
SoAlgorithms()
Algorithms interface constructor.
static bool isInitialized()
Returns TRUE if module is currently initialized.
<a href="IconLegend.html"><img src="extTGS.gif" alt="VSG extension" border="0"></a> Arithmetic funct...
<a href="IconLegend.html"><img src="extTGS.gif" alt="VSG extension" border="0"></a> Abstract base cl...
<a href="IconLegend.html"><img src="extTGS.gif" alt="VSG extension" border="0"></a> Type conversion ...
<a href="IconLegend.html"><img src="extTGS.gif" alt="VSG extension" border="0"></a> Convolution func...
<a href="IconLegend.html"><img src="extTGS.gif" alt="VSG extension" border="0"></a> Abstract base cl...
<a href="IconLegend.html"><img src="extTGS.gif" alt="VSG extension" border="0"></a> Seismic attribut...