[Insight-developers] itkBloxBoundaryPointImage typename missing

Luis Ibanez ibanez@choroid.cs.unc.edu
Tue, 6 Nov 2001 08:08:06 -0500 (EST)


Hi Damion,

itkBloxBoundaryPointImage.txx was missing a couple of
typename keywords.

In general, when a templated class uses types defined
in their template parameters, the compiler requires
"typename" to know that the words after :: are types,
as opposed to enums, or static functions, or static
variables.

in the case of itkBloxBoundaryPointImage, the
declaration:

  TSourceImage::AffineTransformType::Pointer variable;

should rather be writen as:

 typedef typename TSourceImage::AffineTransformType  AffineTransformType;
 typedef typename AffineTransformType::Pointer       AffineTransformPointer;
 AffineTransformPointer  variable;


VC++ does not enforce this notation, but most of the Unix
compilers do.

I didn't find a test for itkBloxBoundaryPointImage, so the only
test I could run was itkCommonHeaderTest.

You may want to verify that this is working properly with you
code...


Thanks


Luis