X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=common%2FclitkIO.cxx;h=aa42db89ea2998a3df138f18a8cc5e1de565d2d3;hb=4848a52e8132ead874e3530d4fa5f3060b956757;hp=271d5a01d8f8e4b14a4882a290d5487da265c578;hpb=ce8987fa603ce1591d6d595273761d092467575d;p=clitk.git diff --git a/common/clitkIO.cxx b/common/clitkIO.cxx index 271d5a0..aa42db8 100644 --- a/common/clitkIO.cxx +++ b/common/clitkIO.cxx @@ -33,6 +33,9 @@ #include "rtkHisImageIOFactory.h" #include "rtkHndImageIOFactory.h" #include "rtkEdfImageIOFactory.h" +#include "rtkImagXImageIOFactory.h" +#include "rtkXRadImageIOFactory.h" +#include "clitkEsrfHstImageIOFactory.h" #include "clitkGateAsciiImageIOFactory.h" #include "clitkConfiguration.h" #if CLITK_PRIVATE_FEATURES @@ -40,11 +43,32 @@ #include "clitkUSVoxImageIOFactory.h" #include "clitkSvlImageIOFactory.h" #endif +#if ITK_VERSION_MAJOR >= 4 + #include "itkGDCMImageIOFactory.h" + #include "itkPNGImageIOFactory.h" +#endif //-------------------------------------------------------------------- // Register factories void clitk::RegisterClitkFactories() { +#if ITK_VERSION_MAJOR >= 4 + std::list< itk::ObjectFactoryBase * > fl = itk::GDCMImageIOFactory::GetRegisteredFactories(); + for (std::list< itk::ObjectFactoryBase * >::iterator it = fl.begin(); it != fl.end(); ++it) + if (dynamic_cast(*it)) + { + itk::GDCMImageIOFactory::UnRegisterFactory(*it); + break; + } + + std::list< itk::ObjectFactoryBase * > flpng = itk::PNGImageIOFactory::GetRegisteredFactories(); + for (std::list< itk::ObjectFactoryBase * >::iterator it = flpng.begin(); it != flpng.end(); ++it) + if (dynamic_cast(*it)) + { + itk::PNGImageIOFactory::UnRegisterFactory(*it); + break; + } +#endif #if CLITK_PRIVATE_FEATURES clitk::UsfImageIOFactory::RegisterOneFactory(); clitk::USVoxImageIOFactory::RegisterOneFactory(); @@ -61,5 +85,12 @@ void clitk::RegisterClitkFactories() rtk::HisImageIOFactory::RegisterOneFactory(); rtk::HndImageIOFactory::RegisterOneFactory(); rtk::EdfImageIOFactory::RegisterOneFactory(); + rtk::ImagXImageIOFactory::RegisterOneFactory(); + rtk::XRadImageIOFactory::RegisterOneFactory(); + clitk::EsrfHstImageIOFactory::RegisterOneFactory(); +#if ITK_VERSION_MAJOR >= 4 + itk::GDCMImageIOFactory::RegisterOneFactory(); + itk::PNGImageIOFactory::RegisterOneFactory(); +#endif } ////