Thanks a lot, Marcus.
I was hoping to figure out why my plugin dll does not behave the same way as 
other internally built reader classes (dlls) which have the clause of dllexport 
and dllimport depending on the hosting project. My plugin dll only specifies 
dllexport as instructed by ParaView plugin examples. These internal readers can 
populate "Cell/Point Array Status" list in the "Object Inspector" widget -> 
"Properties" panel, whereas my reader plugin cannot. Following 
vtkAVSucdReader.h/cxx does not work yet. Any hint? Sorry for the divergence of 
the topic. My real problem has been posted in 
http://www.paraview.org/pipermail/paraview/2011-March/020696.html

Best,
xunlei

-----Original Message-----
From: Marcus D. Hanwell [mailto:marcus.hanw...@kitware.com] 
Sent: Saturday, April 16, 2011 9:24 AM
To: Xunlei Wu
Cc: paraview@paraview.org
Subject: Re: [Paraview] VTK_IO_EXPORT vs VTK_EXPORT (VTK_ABI_IMPORT vs 
VTK_ABI_EXPORT)

On Sat, Apr 16, 2011 at 6:10 AM, Xunlei Wu <xun...@renci.org> wrote:
> Hi All,
>
> Could anyone please explain the difference between VTK_IO_EXPORT and 
> VTK_EXPORT (beyond the below definition)? I am writing a file reader 
> plugin and defined my class as VTK_EXPORT. However, many VTK/IO/ 
> reader examples, e.g. vtkAVSucdReader, vtkImageReader are defined as 
> VTK_IO_EXPORT. From the source code,
>
> #define VTK_EXPORT VTK_ABI_EXPORT
>
> #if defined(vtkIO_EXPORTS)
>   #define VTK_IO_EXPORT VTK_ABI_EXPORT #else
>   #define VTK_IO_EXPORT VTK_ABI_IMPORT #endif

There is only a different on the Windows platform, but if you notice it only 
exports if vtkIO_EXPORTS is defined, otherwise it imports.
THis is necessary for DLLs on Windows, all though platforms that support symbol 
visibility only have a concept of exporting. So a macro is needed for each DLL 
in order to ensure the symbols are imported/exported correctly for shared 
windows libraries.

Marcus
_______________________________________________
Powered by www.kitware.com

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Please keep messages on-topic and check the ParaView Wiki at: 
http://paraview.org/Wiki/ParaView

Follow this link to subscribe/unsubscribe:
http://www.paraview.org/mailman/listinfo/paraview

Reply via email to