00001 /*========================================================================= 00002 00003 Program: Medical Imaging & Interaction Toolkit 00004 Language: C++ 00005 Date: $Date: 2009-05-13 18:06:46 +0200 (Mi, 13. Mai 2009) $ 00006 Version: $Revision: 17258 $ 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 00019 #ifndef MITKPlanarFigureSOURCE_H_HEADER_INCLUDED 00020 #define MITKPlanarFigureSOURCE_H_HEADER_INCLUDED 00021 00022 #include "mitkPlanarFigure.h" 00023 #include "PlanarFigureExports.h" 00024 #include "mitkCommon.h" 00025 #include "mitkBaseProcess.h" 00026 00027 namespace mitk 00028 { 00039 class PlanarFigure_EXPORT PlanarFigureSource : public mitk::BaseProcess 00040 { 00041 public: 00042 mitkClassMacro( PlanarFigureSource, BaseProcess ); 00043 itkNewMacro( Self ); 00044 00045 typedef mitk::PlanarFigure OutputType; 00046 typedef OutputType::Pointer OutputTypePointer; 00047 typedef itk::DataObject::Pointer DataObjectPointer; 00048 00054 virtual DataObjectPointer MakeOutput ( unsigned int idx ); 00055 00060 void GenerateInputRequestedRegion(); 00061 00068 void SetOutput( OutputType* output ); 00069 00073 virtual void GraftOutput(itk::DataObject *graft); 00077 virtual void GraftNthOutput(unsigned int idx, itk::DataObject *graft); 00078 00083 OutputType* GetOutput(); 00084 00090 OutputType* GetOutput ( unsigned int idx ); 00091 00092 protected: 00093 PlanarFigureSource(); 00094 virtual ~PlanarFigureSource(); 00095 }; 00096 } // namespace mitk 00097 #endif