00001 /*========================================================================= 00002 00003 Program: Medical Imaging & Interaction Toolkit 00004 Language: C++ 00005 Date: $Date$ 00006 Version: $Revision$ 00007 00008 Copyright (c) German Cancer Research Center, Division of Medical and 00009 Biological Informatics. All rights reserved. 00010 See MITKCopyright.txt or https://www.mitk.org/copyright.html for details. 00011 00012 This software is distributed WITHOUT ANY WARRANTY; without even 00013 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00014 PURPOSE. See the above copyright notices for more information. 00015 00016 =========================================================================*/ 00017 00018 #ifndef __mitkParRecFileIOFactory_h 00019 #define __mitkParRecFileIOFactory_h 00020 00021 #ifdef _MSC_VER 00022 #pragma warning ( disable : 4786 ) 00023 #endif 00024 00025 #include "itkObjectFactoryBase.h" 00026 #include "MitkExtExports.h" 00027 #include "mitkBaseData.h" 00028 00029 namespace mitk 00030 { 00031 //##Documentation 00032 //## @brief Create instances of ParRecFileReader objects using an object factory. 00033 //## 00034 //## @ingroup IO 00035 class MitkExt_EXPORT ParRecFileIOFactory : public itk::ObjectFactoryBase 00036 { 00037 public: 00039 typedef ParRecFileIOFactory Self; 00040 typedef itk::ObjectFactoryBase Superclass; 00041 typedef itk::SmartPointer<Self> Pointer; 00042 typedef itk::SmartPointer<const Self> ConstPointer; 00043 00045 virtual const char* GetITKSourceVersion(void) const; 00046 virtual const char* GetDescription(void) const; 00047 00049 itkFactorylessNewMacro(Self); 00050 static ParRecFileIOFactory* FactoryNew() { return new ParRecFileIOFactory;} 00052 itkTypeMacro(ParRecFileIOFactory, ObjectFactoryBase); 00053 00055 static void RegisterOneFactory(void) 00056 { 00057 ParRecFileIOFactory::Pointer ParRecFileIOFactory = ParRecFileIOFactory::New(); 00058 ObjectFactoryBase::RegisterFactory(ParRecFileIOFactory); 00059 } 00060 00061 protected: 00062 ParRecFileIOFactory(); 00063 ~ParRecFileIOFactory(); 00064 00065 private: 00066 ParRecFileIOFactory(const Self&); //purposely not implemented 00067 void operator=(const Self&); //purposely not implemented 00068 00069 }; 00070 00071 00072 } // end namespace mitk 00073 00074 #endif