176 void *userData = NULL);
195 bool substringOK =
FALSE);
287 static int doSelect(
int nfds, fd_set *readfds, fd_set *writefds,
289 struct timeval *userTimeOut);
320 {
if (--notifyCount == 0)
321 globalDB->sensorManager.processImmediateQueue(); }
331 static const char *versionString;
332 static SoDB *globalDB;
335 static int notifyCount;
338 static void realTimeSensorCallback();
339 static SoSFRealTime *realTime;
348 static SbDict *conversionDict;
352 {
return (fromField.
getKey() << 16) | toField.
getKey(); }
354 static void iv2_1PreCallback(
void *userData,
SoInput *in);
355 static void iv2_0PreCallback(
void *userData,
SoInput *in);
356 static void iv1_0PreCallback(
void *userData,
SoInput *in);
357 static void iv2_0PostCallback(
void *userData,
SoInput *in);
358 static void iv1_0PostCallback(
void *userData,
SoInput *in);
#define SoEXTENDER
Provide inline template functions for abs, swap, min, max, and clamp.
#define INVENTOR_API
Disable some annoying warnings on MSVC 6.
void SoDBHeaderCB(void *userData, SoInput *in)
This is a dictionary mapping (size_t) integer keys to (void *) data pointers.
Character string stored in a hash table.
List of generic (void *) pointers.
Class for smart character strings.
Class for representation of a time.
Base class for all nodes, paths, and engines.
Scene graph database class.
static bool isValidHeader(const char *testString)
This returns TRUE if the given character string is one of the valid Inventor file headers,...
static void renameGlobalField(const SbName &oldName, const SbName &newName)
Renames the global field named oldName.
static SoField * createGlobalField(const SbName &name, SoType type)
The database maintains a namespace for global fields, making sure that there is at most one instance ...
static bool isNotifying()
static const char * getVersion()
Returns a character string identifying the version of the Inventor library in use.
static bool read(SoInput *in, SoNode *&rootNode)
static void setDelaySensorTimeout(const SbTime &t)
This sets the timeout value for sensors that are delay queue sensors (one-shot sensors,...
static int doSelect(int nfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct timeval *userTimeOut)
In order to keep timer and idle sensors running as expected, it is necessary that an Inventor applica...
static SoType getConverter(SoType fromField, SoType toField)
Returns the field conversion engine registered for the two given field types.
static bool read(SoInput *in, SoPath *&path)
Reads a graph from the file specified by the given SoInput, returning a pointer to the resulting root...
static SoSensorManager * getSensorManager()
Accesses sensor manager.
static void setRealTimeInterval(const SbTime &deltaT)
The database automatically creates one global field when SoDB::init() is called.
static int getNumHeaders()
Returns the number of valid headers, including standard Inventor headers, and user-registered headers...
static void addConverter(SoType fromField, SoType toField, SoType converterEngine)
Registers a field conversion engine that can be used to convert from one type of field to another.
static bool read(SoInput *in, SoBase *&base)
Reads a base of any type, returning a pointer to it.
static void startNotify()
This is called when some instance begins or ends a notification process.
static bool registerHeader(const SbString &headerString, bool isBinary, float ivVersion, SoDBHeaderCB *preCB, SoDBHeaderCB *postCB, void *userData=NULL)
Registers the given string as a valid header for input files.
static SbString getHeaderString(int i)
Returns the i'th header.
static void enableRealTimeSensor(bool enable)
Enables/disables realTime sensor processing.
static bool isInitialized()
Returns TRUE if database is initialized (for error checking)
static bool getHeaderData(const SbString &string, bool &isBinary, float &ivVersion, SoDBHeaderCB *&preCB, SoDBHeaderCB *&postCB, void *&userData, bool substringOK=FALSE)
Passes back the data registered with the given header string, including the flag specifying whether t...
static const SbTime & getDelaySensorTimeout()
Returns the current delay queue timeout value.
static SoField * getGlobalField(const SbName &name)
Returns the global field with the given name, or NULL if there is none.
static SoSeparator * readAll(SoInput *in)
Reads all graphs and paths from the file specified by the given SoInput.
static const SbTime & getRealTimeInterval()
Returns how often the database is updating realTime .
static void init()
Initializes the database.
Base class for all fields.
Abstract base class for all database nodes.
Path that points to a list of hierarchical nodes.
Group node that saves and restores traversal state.
Sensor that triggers callback repeatedly at regular intervals.
SoType has no virtual functions to keep it small...
short getKey() const
Returns the type key as a short.