RV: [Insight-users] LevelSet Filters Problem (ITK_TYPENAME related)SOLVED??

Osc at r olguna at cimat.mx
Mon Jan 21 22:12:01 EST 2008


Forget to say that at the end itkWin32Header.h was unaltered


Oscar Gutiérrez Luna
CIMAT A. C.
Cubiculo: J4
Tel.: 73 271-55 ext. 49672
 

     -----Mensaje original-----
     De: insight-users-bounces+olguna=cimat.mx at itk.org 
     [mailto:insight-users-bounces+olguna=cimat.mx at itk.org] En 
     nombre de Osc at r
     Enviado el: Lunes, 21 de Enero de 2008 09:05 p.m.
     Para: Insight-users at itk.org
     Asunto: RV: [Insight-users] LevelSet Filters Problem 
     (ITK_TYPENAME related)SOLVED??
     
     Hi Luis
     Thank you for your reply ... 
     I wanna said you, and community, that the problem seems to 
     be solved (maybe
     is not the best way): 
     Comment out the line for the macro "#define ITK_TYPENAME 
     typename", and did
     not work
     
     Then comment out ITK_TYPENAME, in the problem line, and 
     got another 2 errors
     quite similar, so, I comment out them too, it was possible compile.
     
     I'm running the application and it seems works fine
     
     
     
     But it was not what I expected...
     I'm building the pipeline as in itkSoftwareGuide, but i'm 
     building both
     FastMarching and ShapeDetection, using the same filters 
     for both, when run
     anyfilter the first time, everything is OK, but if run 
     FastMarching (and
     just FastMarching) ShapeDetection run too, i'm think that 
     it is because
     FastMarching->GetOutput(), is actually, an input for 
     shapeDetection, is that
     right?? if it is, is there a way to stop this behaviour??
     
     Tnx in advance...
     
     
     
     by the way, the code in 
     itkSparceFieldLevelSetImageFilter.txx, was left as:
     
     template<class TInputImage, class TOutputImage>
     ITK_TYPENAME SparseFieldLevelSetImageFilter<TInputImage,
     TOutputImage>::ValueType
     SparseFieldLevelSetImageFilter<TInputImage, TOutputImage>
     ::m_ValueOne = NumericTraits</*ITK_TYPENAME*/
     SparseFieldLevelSetImageFilter<TInputImage,
      
     TOutputImage>::ValueType >::One;
     
     template<class TInputImage, class TOutputImage>
     ITK_TYPENAME SparseFieldLevelSetImageFilter<TInputImage,
     TOutputImage>::ValueType
     SparseFieldLevelSetImageFilter<TInputImage, TOutputImage>
     ::m_ValueZero =
     NumericTraits</*ITK_TYPENAME*/SparseFieldLevelSetImageFilte
     r<TInputImage,
      
     TOutputImage>::ValueType >::Zero;
     
     template<class TInputImage, class TOutputImage>
     ITK_TYPENAME SparseFieldLevelSetImageFilter<TInputImage,
     TOutputImage>::StatusType
     SparseFieldLevelSetImageFilter<TInputImage, TOutputImage>
     ::m_StatusNull = NumericTraits</*ITK_TYPENAME*/
     SparseFieldLevelSetImageFilter<TInputImage,
      
     TOutputImage>::StatusType >::NonpositiveMin();
     
     Note the 3 commented out parts /*ITK_TYPENAME*/, one per 
     each "declaration"
     
     
     Oscar Gutiérrez Luna
     CIMAT A. C.
     Cubiculo: J4
     Tel.: 73 271-55 ext. 49672
      
     
          -----Mensaje original-----
          De: Luis Ibanez [mailto:luis.ibanez at kitware.com] 
          Enviado el: Domingo, 20 de Enero de 2008 06:13 p.m.
          Para: Osc at r
          CC: Insight-users at itk.org
          Asunto: Re: [Insight-users] LevelSet Filters Problem 
          (ITK_TYPENAME related)
          
          
          Hi Oscar,
          
          
          The ITK_TYPENAME symbol (macro) is defined in
          
              Insight/Code/Common/itkWin32Header.h.
          
          In lines 76-82.
          
          
          Please try the following:
          
          In itkWin32Header.h comment out the lines that
          are defining:
          
          
              #define ITK_TYPENAME   typename
          
          
          recompile,
          
          and let us know what the result is.
          
          
          If this works, it means that we have to figure out
          a combination of #if defined that will create the
          correct case for Borland 5.5 when used from the IDE.
          
          
              Thanks
          
          
                 Luis
          
          
          --------------
          Osc at r wrote:
          > Hi All!!
          >  
          > I'm building a GUI_application of segmentation based on 
          > LevelSetImageFilters of ITK, the ones in 
     itkSoftwareGuide and 
          > visualization by VTK
          > FastMarching succeded, but with ShapeDetection and 
          GeodesicActiveContour 
          > there are a compilation Error:
          > [C++ Error] itkSparseFieldLevelSetImageFilter.txx(101): 
          E2439 'typename' 
          > is only allowed in template declarations
          >  
          >             ///////Part of 
          itkSparseFieldLevelSetImageFilter.txx where 
          > locate the error...              
          >                                                          
                       
          > template<class TInputImage, class TOutputImage>
          >                                                          
                       
          > ITK_TYPENAME SparseFieldLevelSetImageFilter<TInputImage, 
          > TOutputImage>::ValueType
          >                                                          
                       
          > SparseFieldLevelSetImageFilter<TInputImage, TOutputImage>
          >      this is line 101 related with the error---->  
          ::m_ValueZero = 
          > NumericTraits<ITK_TYPENAME, 
          SparseFieldLevelSetImageFilter<TInputImage,
          >                                                          
                                                                     
                                                               
          > TOutputImage>::ValueType >::Zero;
          >  
          > It is possible to add the library by:
          >     //Shape Detection Level Set
          > #include <itkShapeDetectionLevelSetImageFilter.h>
          >  //Geodesic Active Contour Level Set
          > #include <itkGeodesicActiveContourLevelSetImageFilter.h>
          >  
          > also is possible to define types by:
          >         typedef float InternalPixelType;
          >  typedef itk::Image<InternalPixelType,3> InternalImageType;
          >  
          >         typedef 
          > 
          itk::ShapeDetectionLevelSetImageFilter<InternalImageType,In
          ternalImageType> 
          > ShapeDetectionFilterType;
          >  
          >  typedef 
          > 
          itk::GeodesicActiveContourLevelSetImageFilter<InternalImage
          Type,InternalImageType> 
          > GeodesicActiveContourFilterType;
          >  
          > Pointers are defined too, by:
          >   ShapeDetectionFilterType::Pointer shapeDetection;
          >   GeodesicActiveContourFilterType::Pointer 
     geodesicActiveContour;
          > if compile just that lines, there are no problems...,
          >      it compile and run with FastMarching Working, 
          shapeDetection and 
          > geodesicActiveContour obviously do nothing
          > But once I added the next, appears the error 
     mentioned before...
          >     shapeDetection=ShapeDetectionFilterType::New();
          >                 or
          >     
     geodesicActiveContour=GeodesicActiveContourFilterType::New()
          >  
          >  
          > Characteristics:
          > Compiler: Borland 5.5
          > IDE: Builder 5.1
          > ITK version: 3.2.0
          > VTK version: 5.0.3
          >  
          > Any suggestions??
          >  
          > Looking only found 
          > 
          http://public.kitware.com/pipermail/insight-users/2004-Sept
          ember/010291.html
          > but adding itkWin32Header.h (as suggested there) doesn't 
          work, altough 
          > it was a MSVC issue
          >  
          > Thanks in Advance
          >  
          > Oscar Gutiérrez Luna
          > CIMAT A. C.
          > Cubiculo: J4
          > Tel.: 73 271-55 ext. 49672
          >  
          > 
          > 
          > 
          -----------------------------------------------------------
          -------------
          > 
          > _______________________________________________
          > Insight-users mailing list
          > Insight-users at itk.org
          > http://www.itk.org/mailman/listinfo/insight-users
     
     _______________________________________________
     Insight-users mailing list
     Insight-users at itk.org
     http://www.itk.org/mailman/listinfo/insight-users
     



More information about the Insight-users mailing list