Hi Christophe,
> Well in fact, I didn't pay attention to the osgwrapper_osgxxx.dlls since
> I thought the input for the Generator was the cpp source files of the
> wrappers and not the built dlls. You're perfectly right about the CMake
> built .sln (make sure to call Rebuild Wrapper osgSim and not simply
> Build, since I left OFF the BUILD_OSG_WRAPPERS in CMake), anyway that's
> what I did yesterday, and had that DLL rebuilt indeed. I don't
> understay what goes wrong since I see - using Depends.exe for example -
> my additions' symbols inside the native osgSim.dll. The
> OPENSCENEGRAPH_X86_DIR variable is okay too. I don't get it for now...
It sounds like the generator may be picking up an old or wrong
osgwrapper_osgSim.dll for some reason. If you set the environment variable
OSG_NOTIFY_LEVEL to DEBUG before executing the generator it'll cause the OSG
DLL loader to tell you exactly which wrapper DLLs are being loaded.
Also, the symbols in osgSim.dll are not used for the introspection information;
all of that is contained in the osgwrapper_osgSim.dll. In crude ASCII art
form, the basic information flow looks something like this:
doxygen
OSG headers --------->
genwrapper
XML interface description ------------>
MSVC++
osgWrapper source -------->
osgDotNet Generator
osgwrapper_*.dll --------------------->
MSVC++
osgDotNet wrapper source -------->
osg*.NET.dll assemblies
-Mike
________________________________
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Christophe Medard
Sent: Friday, August 17, 2007 4:14 AM
To: [email protected]
Subject: [osg-users] osgDotNet : Used from C#
Hi again,
Thanks for all those answers !
> Did you rebuild the osgWrappers/osgSim DLL? If that builds without error the
> osgDotNet generator
> should see your additions. Note that the build of the osgWrappers DLLs is
> not enabled in the
> default CMake configuration; you need to turn on BUILD_OSG_WRAPPERS.
Well in fact, I didn't pay attention to the osgwrapper_osgxxx.dlls since I
thought the input for the Generator was the cpp source files of the wrappers
and not the built dlls.
You're perfectly right about the CMake built .sln (make sure to call Rebuild
Wrapper osgSim and not simply Build, since I left OFF the BUILD_OSG_WRAPPERS in
CMake), anyway that's what I did yesterday, and had that DLL rebuilt indeed.
I don't understay what goes wrong since I see - using Depends.exe for example -
my additions' symbols inside the native osgSim.dll. The OPENSCENEGRAPH_X86_DIR
variable is okay too. I don't get it for now...
> Virtual function invocation among wrappers, user-defined subclasses of
> wrappers, and native code works
>in all directions by virtue of the design of osgDotNet. This support also
>extends to hand-coded virtual
> function wrappers if their implementations mimic the auto-generated support
> code for virtual functions.
Ok, that soothe my mind on that !!
Knowing that, solving the operator wrapping problem becomes the right point to
work on..
> Take a look at the custom code items in the GeneratorConfiguration.cpp file
> in the osgDotNet generator
> source. That mechanism is used to insert arbitrary code into
> osgDotNet-generated wrapper classes, so
> hand-coded wrapper functions to support NodeCallback::operator() could be
> added there.
I see, you're talking about the getCustomCode() thing.
I may try something there... if I get to something clean enough I may submit it
to the team.
Thanks very much for giving those clues !
--
Christophe Médard
Société OKTAL (http://www.oktal.fr)
2 impasse Boudeville
31100 Toulouse (France)
Tél. : (+33) 5 62 11 50 10
Fax : (+33) 5 62 11 50 29
_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org