-#ifndef CLITKIMAGECOMMON_H
-#define CLITKIMAGECOMMON_H
+/*=========================================================================
+ Program: vv http://www.creatis.insa-lyon.fr/rio/vv
+
+ Authors belong to:
+ - University of LYON http://www.universite-lyon.fr/
+ - Léon Bérard cancer center http://oncora1.lyon.fnclcc.fr
+ - CREATIS CNRS laboratory http://www.creatis.insa-lyon.fr
-/**
- -------------------------------------------------------------------
- * @file clitkImageCommon.h
- * @author David Sarrut <David.Sarrut@creatis.insa-lyon.fr>
- * @date 07 Sep 2007 11:30:10
+ This software is distributed WITHOUT ANY WARRANTY; without even
+ the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ PURPOSE. See the copyright notices for more information.
- * @brief
+ It is distributed under dual licence
- -------------------------------------------------------------------*/
+ - BSD See included LICENSE.txt file
+ - CeCILL-B http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
+======================================================================-====*/
+#ifndef CLITKIMAGECOMMON_H
+#define CLITKIMAGECOMMON_H
// clitk
#include "clitkCommon.h"
template<class PixelType>
typename itk::Image<PixelType,4>::Pointer NewImage4D(int sx, int sy, int sz, int st, double dx=1.0, double dy=1.0, double dz=1.0, double dt=1.0);
+ template<class ImageType>
+ typename ImageType::Pointer NewImageLike(const typename ImageType::Pointer input, bool allocate=true);
+
+ template<class ImageType>
+ void CopyValues(const typename ImageType::Pointer input, typename ImageType::Pointer output);
//--------------------------------------------------------------------
// New Image creation (with allocation)
//--------------------------------------------------------------------
// Read/print image header
- itk::ImageIOBase::Pointer readImageHeader(const std::string & filename);
+ itk::ImageIOBase::Pointer readImageHeader(const std::string & filename,bool exit_on_error=true);
void printImageHeader(itk::ImageIOBase::Pointer header, std::ostream & os, const int level=0);
//--------------------------------------------------------------------
std::map<typename MaskImageType::PixelType,
std::map<typename InputImageType::PixelType, double> > & mapOfLabelsAndWeights);
+ //--------------------------------------------------------------------
+ template<class ImageType1, class ImageType2>
+ bool HasSameSizeAndSpacing(typename ImageType1::ConstPointer A,
+ typename ImageType2::ConstPointer B);
+
+ template<class ImageType1, class ImageType2>
+ bool HasSameSizeAndSpacing(typename ImageType1::Pointer A,
+ typename ImageType2::Pointer B);
+
#include "clitkImageCommon.txx"
} // end namespace