From: GAUVIN Yves (yves.gauvin++at++sncf.fr)
Date: 08/11/2000 02:36:18
Hello,
I try to use VRPN in my app. Since my app is in C and VRPN is in C++, I
have to use
#define PF_C_API 1
I have some problems concerning the node types. I have written a base
loader which works with a XML file. I don't know which type will be the
node until I read the XML file, so I say that it's a pfNode. I had no
problem in C, but now it doesn't compile.
The error messages are the following:
[gauvin++at++d2r2 sofi]$ make
making OpenGL DSO version of sofi
make[1]: Entering directory `/home/gauvin/sofi/OPT.I386.OPENGL'
/usr/bin/g++ -O -O -Wall -MD -DI386 -DLinux -I/usr/include
-I.. -I/home/gauvin/sofi/source -I/usr/include/CC -I/usr/include/g++-3
-I/home/gauvin/VRPN/vrpn -I/usr/lib/glib/include
-I/usr/lib/gnome-libs/include -I/home/gauvin/sofi/headers
-I/usr/include -I/usr/include/g++ -c
/home/gauvin/sofi/source/SOFI_loadxml.cpp
/home/gauvin/sofi/source/SOFI_loadxml.cpp: In function `void
SO_disable_shadow(pfNode *)':
/home/gauvin/sofi/source/SOFI_loadxml.cpp:300: type `const pfGroup' is
not a base type for type `pfNode'
/home/gauvin/sofi/source/SOFI_loadxml.cpp:303: type `const pfGroup' is
not a base type for type `pfNode'
/home/gauvin/sofi/source/SOFI_loadxml.cpp: In function `void
pm_Characters(ParserState *, const gchar *, int)':
/home/gauvin/sofi/source/SOFI_loadxml.cpp:407: warning: null format
string
/home/gauvin/sofi/source/SOFI_loadxml.cpp: In function `void
pm_create_element(ParserState *, const xmlChar **, void *)':
/home/gauvin/sofi/source/SOFI_loadxml.cpp:609: type `pfDCS' is not a
base type for type `pfNode'
/home/gauvin/sofi/source/SOFI_loadxml.cpp:649: type `pfGroup' is not a
base type for type `pfNode'
/home/gauvin/sofi/source/SOFI_loadxml.cpp:650: type `pfLOD' is not a
base type for type `pfNode'
/home/gauvin/sofi/source/SOFI_loadxml.cpp:703: type `pfGroup' is not a
base type for type `pfNode'
/home/gauvin/sofi/source/SOFI_loadxml.cpp:571: warning: `class pfNode *
l_new_object' might be used uninitialized in this function
make[1]: *** [SOFI_loadxml.o] Error 1
make[1]: Leaving directory `/home/gauvin/sofi/OPT.I386.OPENGL'
make: *** [sofi.ogldso] Error 2
and the incriminated lines are there:
pfNode *l_new_object;
line 300 : while ((i < pfGetNumChildren(l_current_node)) ||
pfIsOfType(l_current_node, pfGetGeodeClassType()))
line 303 : l_current_node = pfGetChild (p_node ,i);
line 609 : pfDCSMat (l_new_object, p_state->matrix);
line 649 : pfAddChild (l_new_object,l_LOD_node);
line 650 : pfLODRange (l_new_object,
i,p_state->tableau_distance_lod[i]);
line 703 : pfAddChild (p_state->father_node, l_new_object);
I try the cast but it makes other errors and my special includes are :
#include <Performer/pf/pfNode.h>
#include <Performer/pf/pfLOD.h>
#include <Performer/pf/pfDCS.h>
#include <Performer/pf/pfScene.h>
Has somebody an idea to correct this?
Cheers
Yves GAUVIN
This archive was generated by hypermail 2b29 : Fri Aug 11 2000 - 02:38:57 PDT