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 00019 #ifndef MITKNAVIGATIONDATASOURCE_H_HEADER_INCLUDED_ 00020 #define MITKNAVIGATIONDATASOURCE_H_HEADER_INCLUDED_ 00021 00022 #include <itkProcessObject.h> 00023 #include "mitkNavigationData.h" 00024 #include "mitkPropertyList.h" 00025 00026 namespace mitk { 00027 00038 class MitkIGT_EXPORT NavigationDataSource : public itk::ProcessObject 00039 { 00040 public: 00041 mitkClassMacro(NavigationDataSource, itk::ProcessObject); 00042 00046 NavigationData* GetOutput(void); 00047 00051 NavigationData* GetOutput(unsigned int idx); 00052 00056 NavigationData* GetOutput(std::string navDataName); 00057 00063 DataObjectPointerArraySizeType GetOutputIndex(std::string navDataName); 00064 00070 virtual void GraftNthOutput(unsigned int idx, itk::DataObject *graft); 00071 00077 virtual void GraftOutput(itk::DataObject *graft); 00078 00091 virtual DataObjectPointer MakeOutput(unsigned int idx); 00092 00101 virtual void SetParameters(const mitk::PropertyList*){}; 00102 00116 virtual mitk::PropertyList::ConstPointer GetParameters() const; 00117 00118 protected: 00119 NavigationDataSource(); 00120 virtual ~NavigationDataSource(); 00121 }; 00122 } // namespace mitk 00123 #endif /* MITKNAVIGATIONDATASOURCE_H_HEADER_INCLUDED_ */