H3D API  2.4.1
Namespaces | Macros | Functions
H3DApi.h File Reference

Base header file that handles all configuration related settings. More...

#include <HAPI/HAPI.h>

Go to the source code of this file.

Namespaces

 H3D
 H3D API namespace.
 

Macros

#define HAVE_XERCES
 Undef if you do not have xerces-c(http://xerces.apache.org/xerces-c/) installed. More...
 
#define HAVE_OPENAL
 Undef if you do not have OpenAL(www.openal.org) installed. More...
 
#define HAVE_LIBAUDIOFILE
 Undef if you do not have libvorbis(www.vorbis.com) installed. More...
 
#define HAVE_FTGL
 Undef if you do not have the NVIDIA CG Toolkit (developer.nvidia.com/object/cg_toolkit.html) installed. More...
 
#define HAVE_FREETYPE
 Declare this if the header file for ftgl is FTGL/FTGL.h instead of FTGL/ftgl.h. More...
 
#define HAVE_FONTCONFIG
 Undef if you do not have FontConfig.
 
#define HAVE_PYTHON
 Undef if you do not have Python(www.python.org) installed. More...
 
#define HAVE_LIBCURL
 Undef if you do not have libcurl(http://sourceforge.net/projects/curl/) installed. More...
 
#define HAVE_FFMPEG
 Undef if you do not have SpiderMonkey Javascript engine (http://www.mozilla.org/js/spidermonkey/) installed. More...
 
#define HAVE_GLUT
 Undef if you do not Virtual Hand SDK available. More...
 
#define XML_USE_WIN32_TRANSCODER
 Undef if you do not have OpenEXR. More...
 

Functions

void H3D::initializeH3D ()
 Initialize H3D API(only needed if using H3D API as a static library).
 
void H3D::deinitializeH3D ()
 Deinitialize H3D API(only needed if using H3D API as a static library).
 
bool H3D::isLittleEndian ()
 Function for determining if the machine we are running on is uses little endian byte order or not.
 
double H3DAPI_API H3D::getH3DApiVersion ()
 Will return the version of H3DAPI as a double on the form H3DAPI_MAJOR_VERSION.H3DAPI_MINOR_VERSION.
 

Detailed Description

Base header file that handles all configuration related settings.

Macro Definition Documentation

◆ HAVE_FFMPEG

#define HAVE_FFMPEG

Undef if you do not have SpiderMonkey Javascript engine (http://www.mozilla.org/js/spidermonkey/) installed.

Ecmascript support in Script node will not be available without it Undef if you do not have DirectShow available. Needed for the DirectShowDecoder node. Undef if you do not have Sixense SDK available. Needed for the RazerHydraSensor node. Undef if you do not have FFmpeg available. Needed for the FFmpegDecoder node.

◆ HAVE_FREETYPE

#define HAVE_FREETYPE

Declare this if the header file for ftgl is FTGL/FTGL.h instead of FTGL/ftgl.h.

Only used if HAVE_FTGL is defined. Undef if you do not have FreeType(www.freetype.org) installed. Text nodes will then not be supported.

◆ HAVE_FTGL

#define HAVE_FTGL

Undef if you do not have the NVIDIA CG Toolkit (developer.nvidia.com/object/cg_toolkit.html) installed.

CG shader nodes will then not be supported. Undef if you do not have libovr (www.oculus.com) installed. OCULUS_RIFT stereo mode will then not be supported. Undef if you do not have FTGL(homepages.paradise.net.nz/henryj/code) installed. Text nodes will then not be supported.

◆ HAVE_GLUT

#define HAVE_GLUT

Undef if you do not Virtual Hand SDK available.

Needed for the CyberGloveSensor and HumanHand nodes. Undef if you do not have Glut or FreeGlut.

◆ HAVE_LIBAUDIOFILE

#define HAVE_LIBAUDIOFILE

Undef if you do not have libvorbis(www.vorbis.com) installed.

Ogg Vorbis sound files will then not be supported. Undef if you do not have libaudiofile(www.68k.org/~michael/audiofile) installed. Most sound files will then not be supported.

◆ HAVE_LIBCURL

#define HAVE_LIBCURL

Undef if you do not have libcurl(http://sourceforge.net/projects/curl/) installed.

URLs using protocols like http and ftp will then not be supported. Only local filenames can be used.

◆ HAVE_OPENAL

#define HAVE_OPENAL

Undef if you do not have OpenAL(www.openal.org) installed.

Sounds will then be disabled.

◆ HAVE_PYTHON

#define HAVE_PYTHON

Undef if you do not have Python(www.python.org) installed.

PythonScript node will then not be supported.

◆ HAVE_XERCES

#define HAVE_XERCES

Undef if you do not have xerces-c(http://xerces.apache.org/xerces-c/) installed.

Required for parsing xml based x3d files.

◆ XML_USE_WIN32_TRANSCODER

#define XML_USE_WIN32_TRANSCODER

Undef if you do not have OpenEXR.

Undef is you do not have NVAPI def if user choose to disable h3d displaylist. def if user force disable field type access check, which is supposed to be used only for release Cause an assertion if fields are accessed outside the main thread (i.e. in debug builds only). Raise an exception if fields are accessed outside the main thread (including non-debug builds). def if user are sure that they are always calling setTextureUnit after glActiveTexture def if user choose to not use x3d prototype node in SFNode, this is a temporary cpu optimization solution, do not turn it on if you use x3d prototype node, it may not function as expected def if user choose to not use h3ddisplaylistobject to collect event. This is to save cpu time, but displaylist->hasCausedEvent function will no longer work with this def, so you need to make sure your library does not contain displaylist->hasCausedEvent()