message: Update rtkI0EstimationProjectionFilter.h
  Made some changes to work with unsigned ints as well
diff: @@ -41,9 +41,7 @@ namespace rtk
  * \ingroup InPlaceImageFilter
  */
  -template<class TInputImage = itk::Image< unsigned short, 3>,
  - class TOutputImage = TInputImage,
  - unsigned char bitShift = 2 >
  +template< class TInputImage, class TOutputImage, unsigned char bitShift >
  class ITK_EXPORT I0EstimationProjectionFilter:
  public itk::InPlaceImageFilter<TInputImage, TOutputImage>
  {
  @@ -70,17 +68,17 @@ public:
  itkConceptMacro(InputImagePixelTypeIsInteger, (itk::Concept::IsInteger<InputImagePixelType>) );
  /** Main Output: estimation result. */
  - itkGetMacro(I0, unsigned short)
  - itkGetMacro(I0fwhm, unsigned short)
  - itkGetMacro(I0rls, unsigned short)
  + itkGetMacro(I0, InputImagePixelType)
  + itkGetMacro(I0fwhm, InputImagePixelType)
  + itkGetMacro(I0rls, InputImagePixelType)
  /** Maximum encodable detector value if different from (2^16-1) */
  - itkSetMacro(MaxPixelValue, unsigned short)
  - itkGetMacro(MaxPixelValue, unsigned short)
  + itkSetMacro(MaxPixelValue, InputImagePixelType)
  + itkGetMacro(MaxPixelValue, InputImagePixelType)
  /** Expected I0 value (as a result of a detector calibration) */
  - itkSetMacro(ExpectedI0, unsigned short)
  - itkGetMacro(ExpectedI0, unsigned short)
  + itkSetMacro(ExpectedI0, InputImagePixelType)
  + itkGetMacro(ExpectedI0, InputImagePixelType)
  /** RSL estimate coefficient */
  itkSetMacro(Lambda, float)
  @@ -113,9 +111,9 @@ private:
  void operator=(const Self &); //purposely not implemented
  // Input variables
  - unsigned short m_ExpectedI0; // Expected I0 value (as a result of a
  + InputImagePixelType m_ExpectedI0; // Expected I0 value (as a result of a
  // detector calibration)
  - unsigned short m_MaxPixelValue; // Maximum encodable detector value if
  + InputImagePixelType m_MaxPixelValue; // Maximum encodable detector value if
  // different from (2^16-1)
  float m_Lambda; // RLS coefficient
  bool m_SaveHistograms; // Save histograms in a output file
  @@ -126,21 +124,21 @@ private:
  // and bitshift
  // Main variables
  - std::vector< unsigned > m_Histogram; // compressed (bitshifted) histogram
  - unsigned short m_I0; // I0 estimate with no a priori for
  + std::vector< unsigned int > m_Histogram;// compressed (bitshifted) histogram
  + InputImagePixelType m_I0; // I0 estimate with no a priori for
  // each new image
  - unsigned short m_I0rls; // Updated RLS estimate
  - unsigned short m_I0fwhm; // FWHM of the I0 mode
  + InputImagePixelType m_I0rls; // Updated RLS estimate
  + InputImagePixelType m_I0fwhm; // FWHM of the I0 mode
  // Secondary variables
  unsigned int m_Np; // Number of previously analyzed
  // images
  - unsigned short m_Imin, m_Imax; // Define the range of consistent
  + InputImagePixelType m_Imin, m_Imax; // Define the range of consistent
  // pixels in histogram
  - unsigned m_DynThreshold; // Detector values with a frequency of
  + unsigned int m_DynThreshold; // Detector values with a frequency of
  // less than dynThreshold outside
  // min/max are discarded
  - unsigned short m_LowBound, m_HighBound; // Lower/Upper bounds of the I0 mode
  + unsigned int m_LowBound, m_HighBound; // Lower/Upper bounds of the I0 mode
  // at half width
  itk::MutexLock::Pointer m_Mutex;
  