[ptx] Massive clean for visual studio compilation

alexandre jenny alexandre.jenny at le-geo.com
Wed Nov 26 13:26:25 GMT 2003


Finally ! Did it. Got a compiling version of hugin for vs.net : Tough
I will write some doc about it and uploads the needed files.

Some questions and remarks : 
- After my massive checking of files, it should be a really good idea to see
if it compile on linux too (I cannot do it and I cannot guaranty that I
didn't brock anything).
- I figured out some path for the link
  * I put pano12 library at the same level as jhead, and included it in the
hugin project (Should I ?)

Let's back to debugging : I have still a crash at exit of hugin.

++ Alexandre

> -----Message d'origine-----
> De : ptx-bounces at email-lists.org 
> [mailto:ptx-bounces at email-lists.org] De la part de alexandre jenny
> Envoyé : mercredi 26 novembre 2003 09:12
> À : 'PTX mailing list'
> Objet : [ptx] Massive clean for visual studio compilation
> 
> 
> Hi,
> 
> So let's go with what I saw on the code :
> - some includes issues ( "bracket" and <...> are not handled 
> the same on pc.
>   So I have to check all of them. Also when putting the right 
> includes folders name, some includes
>   also miss the hugin or common before it
> - class Diff2D; <- sometimes is a struct, sometimes a class ...
> - CPP violation
>   When creating an iterator from a const reference, the 
> iterator should be const_iterator and not
>   iterator. I doesn't understand how this can compile 
> (Perhaps the gnu compiler isn't so compliant)
>   example :
>      PT::UIntSet::iterator it = changed.begin(); (when 
> changed is a const doesn't work.
>        it's a const_iterator which is needed ... )
> - I renamed some internal variables of struct called max or 
> min to maxi and mini (it simplifies the
>   max min macro problem on pc)
> - round doesn't exist     => created in panoinc.h
>   nearbyint doesn't exist => created in panoinc.h
> - #elif : it's a #elif constant-expression and not #elifdef identifier
>   So you have to change it to a #else and #ifdef
> - Cannot not create constant array with non constant index
>   int level;
>   vigra::BImage templs[levels]; // BAD -> non constant
>     changed to
>   vigra::BImage *templs = new vigra::BImage[levels];
> - some direct casting beetween ( wxScrollEvent | wsSpinEvent 
> ) to wxCommandEvent which aren't
>   allow anymore
>   So in many file, here what we should handle the differents 
> kind of event :
>    - when having an behavior we want to link to many event :
>       Create a generic function which does the stuff
>       Create a handler per kind of event
> 
> I've compiled the hugin and panorama library until the link 
> stage. But are still some linker issues I have to solve.
> 
> Alexandre Jenny
> 



More information about the ptX mailing list