Medical Imaging Interaction Toolkit  2016.11.0
Medical Imaging Interaction Toolkit
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
berryIStructuredSelection.h
Go to the documentation of this file.
1 /*===================================================================
2 
3 BlueBerry Platform
4 
5 Copyright (c) German Cancer Research Center,
6 Division of Medical and Biological Informatics.
7 All rights reserved.
8 
9 This software is distributed WITHOUT ANY WARRANTY; without
10 even the implied warranty of MERCHANTABILITY or FITNESS FOR
11 A PARTICULAR PURPOSE.
12 
13 See LICENSE.txt or http://www.mitk.org for details.
14 
15 ===================================================================*/
16 
17 
18 #ifndef BERRYISTRUCTUREDSELECTION_H_
19 #define BERRYISTRUCTUREDSELECTION_H_
20 
21 #include "berryISelection.h"
22 
23 #include <berryObjectList.h>
25 
26 namespace berry
27 {
28 
33 
35  typedef ContainerType::const_iterator iterator;
36 
38 
39 
45  virtual Object::Pointer GetFirstElement() const = 0;
46 
52  virtual iterator Begin() const = 0;
53 
59  virtual iterator End() const = 0;
60 
66  virtual int Size() const = 0;
67 
73  virtual ContainerType::Pointer ToVector() const = 0;
74 
75  /*
76  * We need to define at least the destructor in this compilation unit
77  * because of the export macro above. Otherwise Windows throws
78  * a linker error in dependent librraies. The export macro is needed
79  * for gcc < 4.5 to correctly mark the type_info object of this class
80  * as visible (we have default visibility 'hidden') so that dynamic_cast calls work.
81  */
82  virtual ~IStructuredSelection();
83 
84 };
85 
86 }
87 
88 #endif /* BERRYISTRUCTUREDSELECTION_H_ */
Light weight base class for most BlueBerry classes.
Definition: berryObject.h:78
ContainerType::const_iterator iterator
#define berryObjectMacro(...)
Definition: berryMacros.h:37
ObjectList< Object::Pointer > ContainerType
#define BERRY_UI_QT