<DIV>Hi,</DIV>
<DIV>I worked on VTK headers and I think the following minor corrections could be done:</DIV>
<DIV>&nbsp;</DIV>
<DIV>-----------------------------------</DIV>
<DIV>In vtkObjectBase.h</DIV>
<DIV>&nbsp;</DIV>
<DIV>#include "vtkIndent.h"<BR>#include "vtkSystemIncludes.h"<BR></DIV>
<DIV>Including vtkSystemIncludes.h is not needed, because it is already done by vtkIndent.h</DIV>
<DIV>&nbsp;</DIV>
<DIV>-----------------------------------</DIV>
<DIV>
<DIV>In vtkMutexLock.h&nbsp;&nbsp;&nbsp; and</DIV>
<DIV>In vtkCriticalSection.h</DIV>
<DIV>&nbsp;</DIV>
<DIV>remove the inclusion of</DIV>
<DIV>#include &lt;winbase.h&gt;</DIV>
<DIV>&nbsp;</DIV>
<DIV>which is already done with &lt;windows.h&gt;&nbsp;through vtkObjectBase-&gt;vtkSystemIncludes-&gt;vtkWin32Header.h</DIV>
<DIV>&nbsp;</DIV>
<DIV>----------------------------------</DIV>
<DIV>The same with</DIV>
<DIV>vtkDynamicLoader.cxx</DIV>
<DIV>vtkDirectory.cxx</DIV>
<DIV>&nbsp;</DIV>
<DIV>which include</DIV>
<DIV>#include &lt;windows.h&gt;</DIV>
<DIV>&nbsp;</DIV>
<DIV>Moreover vtkDirectory.cxx doesn't need &lt;windows.h&gt;</DIV>
<DIV>&nbsp;</DIV>
<DIV>-----------------------------------</DIV>
<DIV>-----------------------------------</DIV>
<DIV>&nbsp;</DIV>
<DIV>I also propose to add some #define before including &lt;windows.h&gt; in vtkWin32Header.h.</DIV>
<DIV>Actually we have:</DIV>
<DIV>&nbsp;</DIV>
<DIV>#ifndef STRICT<BR>#define STRICT<BR>#endif</DIV>
<DIV>#ifdef VTK_USE_ANSI_STDLIB<BR>#ifndef NOMINMAX<BR>#define NOMINMAX<BR>#endif<BR>#endif<BR></DIV>
<DIV>#include &lt;windows.h&gt;<BR></DIV>
<DIV>&nbsp;</DIV>
<DIV>I propose to add at least WIN32_LEAN_AND_MEAN which significantly reduce &lt;windows.h&gt; size and speeds up compile time.</DIV>
<DIV>I found that the following definitions:</DIV>
<DIV>&nbsp;</DIV>
<DIV>#define WIN32_LEAN_AND_MEAN<BR>#define NOSERVICE<BR>#define NOMCX<BR>#define NOIME<BR>#define NONLS<BR></DIV>
<DIV>Reduced compile time by 40% on my computer. I also propose to #undef some Win32 macros which conflicts with VTK function names:</DIV>
<DIV>#undef CreateDirectory<BR>#undef GetClassName<BR>#undef GetProp<BR>#undef RemoveProp<BR>//#undef SetProp<BR></DIV>
<DIV>This solves some problems with VTK under windows, in particular when compiling in UNICODE (error likes "could not find GetClassNameW", etc...)</DIV>
<DIV>So I propose to replace</DIV>
<DIV>&nbsp;</DIV>
<DIV>#include &lt;windows.h&gt;</DIV>
<DIV>&nbsp;</DIV>
<DIV>by</DIV>
<DIV>&nbsp;</DIV>
<DIV>#define WIN32_LEAN_AND_MEAN<BR>#define NOSERVICE<BR>#define NOMCX<BR>#define NOIME<BR>#define NONLS</DIV>
<DIV><BR>#include &lt;windows.h&gt;</DIV>
<DIV><BR>#undef CreateDirectory<BR>#undef GetClassName<BR>#undef GetProp<BR>#undef RemoveProp<BR>#undef SetProp<BR>//#undef SendMessage<BR></DIV>
<DIV>No code is broken, except if you #undef SendMessage (conflicts with vtkSocketCommunicator::SendMessage), vtkWin32OutputWindow.cxx will not compile.</DIV>
<DIV>&nbsp;</DIV>
<DIV>For more details you can read:</DIV>
<DIV><A href="http://aurelien_regat-barrel.blogspot.com/">http://aurelien_regat-barrel.blogspot.com/</A></DIV>
<DIV>&nbsp;</DIV>
<DIV>Regards.</DIV>
<DIV>&nbsp;</DIV></DIV><BR><BR><DIV>
<DIV>Aurélien REGAT-BARREL <BR>My VTK blog : <A href="http://aurelien_regat-barrel.blogspot.com/">http://aurelien_regat-barrel.blogspot.com</A></DIV></DIV><p>
                <hr size=1>
Créez gratuitement votre Yahoo! Mail avec <font color="red"><b>100 Mo de stockage !</b></font>
<br><a href="http://fr.rd.yahoo.com/mail/taglines/*http://fr.rd.yahoo.com/evt=25917/*http://fr.rd.yahoo.com/mail/mail_taglines_100/default/*http://fr.benefits.yahoo.com/">Créez votre Yahoo! Mail</a><br><br>
<font color="red"><b>Le nouveau Yahoo! Messenger est arrivé !</b></font> Découvrez toutes les nouveautés pour dialoguer instantanément avec vos amis.
<a href="http://fr.rd.yahoo.com/mail/taglines/*http://fr.rd.yahoo.com/evt=26111/*http://fr.rd.yahoo.com/messenger/mail_taglines/default/*http://fr.messenger.yahoo.com">Téléchargez GRATUITEMENT ici !</a>