00001 /*========================================================================= 00002 00003 Program: Medical Imaging & Interaction Toolkit 00004 Language: C++ 00005 Date: $Date: 2009-05-28 17:19:30 +0200 (Do, 28 Mai 2009) $ 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 #include "mitkNavigationToolStorage.h" 00019 00020 mitk::NavigationToolStorage::NavigationToolStorage() 00021 { 00022 m_ToolCollection = std::vector<mitk::NavigationTool::Pointer>(); 00023 } 00024 00025 mitk::NavigationToolStorage::~NavigationToolStorage() 00026 { 00027 00028 } 00029 00030 bool mitk::NavigationToolStorage::DeleteTool(int number) 00031 { 00032 if ((unsigned int)number > m_ToolCollection.size()) return false; 00033 std::vector<mitk::NavigationTool::Pointer>::iterator it = m_ToolCollection.begin() + number; 00034 m_ToolCollection.erase(it); 00035 return true; 00036 } 00037 00038 bool mitk::NavigationToolStorage::AddTool(mitk::NavigationTool::Pointer tool) 00039 { 00040 if (GetTool(tool->GetIdentifier()).IsNotNull()) return false; 00041 else 00042 { 00043 m_ToolCollection.push_back(tool); 00044 return true; 00045 } 00046 } 00047 00048 mitk::NavigationTool::Pointer mitk::NavigationToolStorage::GetTool(int number) 00049 { 00050 return m_ToolCollection.at(number); 00051 } 00052 00053 mitk::NavigationTool::Pointer mitk::NavigationToolStorage::GetTool(std::string identifier) 00054 { 00055 for (int i=0; i<GetToolCount(); i++) if ((GetTool(i)->GetIdentifier())==identifier) return GetTool(i); 00056 return NULL; 00057 } 00058 00059 int mitk::NavigationToolStorage::GetToolCount() 00060 { 00061 return m_ToolCollection.size(); 00062 } 00063 00064 bool mitk::NavigationToolStorage::isEmpty() 00065 { 00066 return m_ToolCollection.empty(); 00067 }