00001 /*========================================================================= 00002 00003 Program: BlueBerry Platform 00004 Language: C++ 00005 Date: $Date: 2010-01-16 19:57:43 +0100 (Sat, 16 Jan 2010) $ 00006 Version: $Revision: 21070 $ 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 MITKINPUTDEVICEDESCRIPTOR_H_ 00019 #define MITKINPUTDEVICEDESCRIPTOR_H_ 00020 00021 #include <berryIConfigurationElement.h> 00022 00023 #include <string> 00024 00025 #include "mitkIInputDeviceDescriptor.h" 00026 #include "mitkIInputDevice.h" 00027 00028 namespace mitk 00029 { 00036 class InputDeviceDescriptor : public IInputDeviceDescriptor 00037 { 00038 00039 public: 00040 00047 InputDeviceDescriptor(berry::IConfigurationElement::Pointer inputDeviceExtensionPoint); 00048 00052 ~InputDeviceDescriptor(); 00053 00057 mitk::IInputDevice::Pointer CreateInputDevice(); 00058 00062 std::string GetDescription() const; 00063 00067 std::string GetID() const; 00068 00072 std::string GetName() const; 00073 00077 bool operator==(const Object* object) const; 00078 00079 private: 00080 00081 // IConfigurationElements are used to access xml files (here: plugin.xml) 00082 berry::IConfigurationElement::Pointer m_InputDeviceExtensionPoint; 00083 mitk::IInputDevice::Pointer m_InputDevice; 00084 00085 }; // end class 00086 } // end namespace 00087 00088 #endif /*MITKINPUTDEVICEDESCRIPTOR_H_*/