Okay, so I implement a myClass in the core, and I declare a static myClass
mycalss in my DLL.

so, I can call with the static implementation, the methods I want in the DLL
from my core.

A last point I would like to understand :

in each plugin, there is the "magic" :
REGISTER_OSGPLUGIN(...)

#define REGISTER_OSGPLUGIN(ext, classname) \
    extern "C" void osgdb_##ext(void) {} \
    static osgDB::RegisterReaderWriterProxy<classname> g_proxy_##classname;

So the static member is for communication, but the osgdb_##ext is for what ?
I didn't see what does this declaration can do ..

Thanks.

Regards,
   Vincent

2009/5/14 Ulrich Hertlein <[email protected]>

> Hi Vincent,
>
> On 14/5/09 11:53 AM, Vincent Bourdier wrote:
>
>> So if I understand well, when the dll is loaded by dynamic_library, the
>> REGISTER_OSGPLUGIN(...) create a static function, which is stacked in
>> the registry, just because of the load.
>> This is just native C++ behaviour, or do I miss some things...  ?
>>
>
> Not a static function but a static variable.  And yes, this is standard C
> behaviour that static variables are initialized.
>
>
> Cheers,
> /ulrich
> _______________________________________________
> osg-users mailing list
> [email protected]
> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
>
_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to