X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=common%2FclitkIO.cxx;h=aa42db89ea2998a3df138f18a8cc5e1de565d2d3;hb=90eac63a4867c55d55f20fa8a0103434406e9804;hp=74284ea94449396aad0cf731b0c3a7825253028d;hpb=c7a6bc15ce7ef75426e8f1db97453635fa430370;p=clitk.git diff --git a/common/clitkIO.cxx b/common/clitkIO.cxx index 74284ea..aa42db8 100644 --- a/common/clitkIO.cxx +++ b/common/clitkIO.cxx @@ -33,6 +33,8 @@ #include "rtkHisImageIOFactory.h" #include "rtkHndImageIOFactory.h" #include "rtkEdfImageIOFactory.h" +#include "rtkImagXImageIOFactory.h" +#include "rtkXRadImageIOFactory.h" #include "clitkEsrfHstImageIOFactory.h" #include "clitkGateAsciiImageIOFactory.h" #include "clitkConfiguration.h" @@ -41,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(); @@ -62,6 +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 } ////