25 #ifndef WIN32_LEAN_AND_MEAN
26 #define WIN32_LEAN_AND_MEAN
29 #define strdup _strdup
34 #include <sys/socket.h>
35 #include <netinet/in.h>
125#define REMOVE_EOT {char *lp; lp=strstr(ptr,"RE_EOT"); if (lp!=NULL) {lp--; *lp='\0';}};
126#define SKIP_IF_GT_SPACE while (*ptr > ' ') ptr++;
127#define SKIP_CONTROLCHARS while ((*ptr != '\0') && (*ptr <= ' ')) ptr++;
142#define X3DEventIn struct _intX3DEventIn
143#define X3DEventOut struct _intX3DEventIn
144#define X3DFieldDef struct _intX3DEventIn
148X3DNode *X3D_getNode (
char *name);
149X3DNode *X3D_getExecutionContext();
150void X3D_rootNodeHandling(
X3DNode* scene,
X3DNode* node,
int action);
151X3DEventIn *X3D_getEventIn(
X3DNode *node,
char *name);
152X3DEventOut *X3D_getEventOut(
X3DNode *node,
char *name);
153void X3D_setValue (X3DEventIn *dest,
X3DNode *node);
154void X3D_addRoute (X3DEventOut *from, X3DEventIn *to);
155void X3D_deleteRoute (X3DEventOut *from, X3DEventIn *to);
156char* X3D_getFieldDefs(
int nodeAdr);
157X3DFieldDef* X3D_getFieldDef(
X3DNode *node,
char *name);
163int X3D_getParentNodesbyName(
char *childName,
X3DNode** outChildNode,
X3DNode** outParentArray);
167void X3D_initialize(
char *);
171void* freewrlSwigThread(
void *);
173int findFieldInFIELDTYPES(
char *fieldtype);
174void X3D_freeNode(
X3DNode* node);
175X3DNode* X3D_getValue (X3DEventOut *src);
177void freewrlSwigThread(
void);
179void *freewrlReadThread(
void*);
180void *freewrlEVcallbackThread(
void*);
183float X3D_getCurrentSpeed();
184float X3D_getCurrentFrameRate();
187void X3D_firstViewpoint();
188void X3D_lastViewpoint();
189void X3D_nextViewpoint();
190void X3D_previousViewpoint();
191void X3D_setDescription(
char *newDescription);
194char *X3D_getDescription();
196char *X3D_getVersion();
197char *X3D_getWorldURL();
200X3DNode *X3D_createVrmlFromString(
char *str);
201X3DNode *X3D_createX3DFromString(
char *str);
202X3DNode *X3D_newSFVec3f (
float a,
float b,
float c);
203X3DNode *X3D_newSFColor (
float a,
float b,
float c);
204X3DNode *X3D_newSFVec2f (
float a,
float b);
205X3DNode *X3D_newSFRotation (
float a,
float b,
float c,
float d);
206X3DNode *X3D_newSFColorRGBA (
float a,
float b,
float c,
float d);
207X3DNode *X3D_newSFVec3d (
double a,
double b,
double c);
208X3DNode *X3D_newSFVec2d (
double a,
double b);
210X3DNode *X3D_newSFFloat (
float a);
211X3DNode *X3D_newSFTime (
double a);
212X3DNode *X3D_newSFInt32 (
int a);
230extern int _X3D_queryno;
231extern int _X3D_FreeWRL_FD;
232extern int _X3D_FreeWRL_Swig_FD;
234int _X3D_countWords(
char *ptr);
235char *_X3D_make1StringCommand (
char command,
char *name);
236char *_X3D_make2StringCommand (
char command,
char *str1,
char *str2);
237char *_X3D_Browser_SendEventType(
int adr,
char *name,
char *evtype);
238char *_X3D_makeShortCommand (
char command);
239void _X3D_sendEvent (
char command,
char *
string,
int li);
240void _handleFreeWRLcallback(
char *
command);
242void X3D_error(
char *msg);
243char *fieldTypeName(
char type);
245char * _RegisterListener (X3DEventOut *node,
int adin);
246int X3DAdvise (X3DEventOut *node,
void *fn);
247int X3DAdviseArg (X3DEventOut *node,
void *fn,
void* arg);
248void _handleReWireCallback(
char *buf);
249char mapFieldTypeToEAItype (
int st);
250int mapEAItypeToFieldType (
char st);
251X3DNode* X3D_getValue(X3DEventOut *src);
252void X3D_freeEventIn(X3DEventIn* ev);
253void X3D_freeEventOut(X3DEventOut* ev);
254void X3D_freeNode(
X3DNode* node);
255X3DNode* X3D_newSFVec3f(
float a,
float b,
float c);
256void X3D_getSFVec3f(
X3DNode* node,
float* value);
257X3DNode* X3D_newColor(
float a,
float b,
float c);
258void X3D_getSFColor(
X3DNode* node,
float* value);
259X3DNode* X3D_newSFVec2f(
float a,
float b);
260void X3D_getSFVec2f(
X3DNode* node,
float* value);
261X3DNode* X3D_newSFRotation(
float a,
float b,
float c,
float d);
262void X3D_getSFRotation(
X3DNode* node,
float* value);
263X3DNode* X3D_newSFColorRGBA(
float a,
float b,
float c,
float d);
264void X3D_getSF(
X3DNode* node,
float* value);
266void X3D_getSFBool(
X3DNode* node,
int* value);
267X3DNode* X3D_newSFFloat(
float a);
268void X3D_getSFFloat(
X3DNode* node,
float* value);
269void X3D_getSFTime(
X3DNode* node,
double* value);
270X3DNode* X3D_newSFTime(
double a);
272void X3D_getSFInt32(
X3DNode* node,
int* value);
273X3DNode* X3D_newSFString(
char* a);
274char* X3D_getSFString(
X3DNode* node);
275X3DNode* X3D_newMFInt32(
int num,
int* array);
276void X3D_getMFInt32(
X3DNode*,
int** array,
int* num);
277X3DNode* X3D_newMFFloat(
int num,
float* array);
278void X3D_getMFFloat(
X3DNode*,
float** array,
int* num);
279X3DNode* X3D_newMFVec3f(
int num,
float(* array)[3]);
280void X3D_getMFVec3f(
X3DNode*,
float*** array,
int* num);
281X3DNode* X3D_newMFColor(
int num,
float(* array)[3]);
282void X3D_getMFColor(
X3DNode*,
float*** array,
int* num);
283X3DNode* X3D_newMFVec2f(
int num,
float(* array)[2]);
284void X3D_getMFVec2f(
X3DNode*,
float*** array,
int* num);
285X3DNode* X3D_newMFRotation(
int num,
float(* array)[4]);
286void X3D_getMFRotation(
X3DNode*,
float*** array,
int* num);
287X3DNode* X3D_newMFColorRGBA(
int num,
float(* array)[4]);
288void X3D_getMFColorRGBA(
X3DNode*,
float*** array,
int* num);
289X3DNode* X3D_newMFBool(
int num,
int* array);
290void X3D_getMFBool(
X3DNode*,
int** array,
int* num);
291X3DNode* X3D_newMFVec3d(
int num,
double(* array)[3]);
292void X3D_getMFVec3d(
X3DNode*,
double*** array,
int* num);
293X3DNode* X3D_newMFString(
int num,
char array[][STRLEN]);
294void X3D_getMFString(
X3DNode* node,
char*** array,
int* num);