36 #include <Inventor/SbBasic.h>
37 #include <Inventor/SbString.h>
39 #include <Inventor/sensors/SoSensorManager.h>
52 typedef void SoDBHeaderCB(
void * data,
SoInput * input);
57 static void init(
void);
58 static void finish(
void);
59 static void cleanup(
void);
61 static const char * getVersion(
void);
67 static SbBool isValidHeader(
const char * teststring);
68 static SbBool registerHeader(
const SbString & headerstring,
71 SoDBHeaderCB * precallback,
72 SoDBHeaderCB * postcallback,
73 void * userdata = NULL);
74 static SbBool getHeaderData(
const SbString & headerstring,
77 SoDBHeaderCB *& precallback,
78 SoDBHeaderCB *& postcallback,
80 SbBool substringok = FALSE);
81 static int getNumHeaders(
void);
82 static SbString getHeaderString(
const int i);
85 static void renameGlobalField(
const SbName & from,
const SbName & to);
87 static void setRealTimeInterval(
const SbTime & interval);
88 static const SbTime & getRealTimeInterval(
void);
89 static void enableRealTimeSensor(SbBool on);
92 static void setDelaySensorTimeout(
const SbTime & t);
93 static const SbTime & getDelaySensorTimeout(
void);
94 static int doSelect(
int nfds,
void * readfds,
void * writefds,
95 void * exceptfds,
struct timeval * usertimeout);
100 static SbBool isInitialized(
void);
102 static void startNotify(
void);
103 static SbBool isNotifying(
void);
104 static void endNotify(
void);
107 SbBool interruptible,
void * userdata);
108 static void addProgressCallback(ProgressCallbackType * func,
void * userdata);
109 static void removeProgressCallback(ProgressCallbackType * func,
void * userdata);
111 static SbBool isMultiThread(
void);
112 static void readlock(
void);
113 static void readunlock(
void);
114 static void writelock(
void);
115 static void writeunlock(
void);
117 static void createRoute(
SoNode * from,
const char * eventout,
118 SoNode * to,
const char * eventin);
119 static void removeRoute(
SoNode * from,
const char * eventout,
120 SoNode * to,
const char * eventin);
126 #endif // !COIN_SODB_H