The Fib multimedia system
Fib is a system for storing multimedia data (like images or films).
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
cUseConvertAreaToExtObjectsStrategy.h
Go to the documentation of this file.
1 /**
2  * @file cUseConvertAreaToExtObjectsStrategy
3  * file name: cUseConvertAreaToExtObjectsStrategy.h
4  * @author Betti Oesterholz
5  * @date 26.01.2013
6  * @mail Oesterholz@Fib-development.org
7  *
8  * System: C++
9  *
10  * This header specifies a class to manage the strategy to convert a area
11  * of points to a list of external objects.
12  *
13  * Copyright (C) @c GPL3 2013 Betti Oesterholz
14  *
15  * This program is free software: you can redistribute it and/or modify
16  * it under the terms of the GNU General Public License (GPL) as
17  * published by the Free Software Foundation, either version 3 of the
18  * License, or any later version.
19  *
20  * This program is distributed in the hope that it will be useful,
21  * but WITHOUT ANY WARRANTY; without even the implied warranty of
22  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
23  * GNU Lesser General Public License for more details.
24  *
25  * This header specifies a class to manage the strategy to convert a area
26  * of points to a list of external objects.
27  *
28  * @patter strategy
29  */
30 /*
31 History:
32 26.01.2013 Oesterholz created
33 */
34 
35 
36 #ifndef ___C_USE_CONVERT_AREA_TO_EXT_OBJECTS_STRATEGY_H__
37 #define ___C_USE_CONVERT_AREA_TO_EXT_OBJECTS_STRATEGY_H__
38 
39 #include "version.h"
40 
42 
43 namespace fib{
44 
45 namespace algorithms{
46 
47 namespace nConvertToFib{
48 
49 namespace nImage{
50 
51 namespace nStructureData{
52 
53 namespace nConvertToFib{
54 
55 
57 protected:
58 
59  /**
60  * A pointer to the strategy to use.
61  * Allways existing (=not NULL).
62  *
63  * Should implement @see iConvertAreaToExtObjects
64  */
66 
67 public:
68 
69  /**
70  * Standard constructor
71  *
72  * @param pInConvertStrategy a pointer to the strategy to use;
73  * If NULL (standard value) the default strategy will be used.
74  * The given strategy will be cloned.
75  * @see pConvertStrategy
76  */
78  const iConvertAreaToExtObjects * pInConvertStrategy = NULL );
79 
80  /**
81  * destructor
82  */
84 
85  /**
86  * @return the strategy to use to convert areas to a list of external objects
87  */
88  const iConvertAreaToExtObjects * getStrategy() const;
89 
90  /**
91  * Sets the strategy to use to convert areas to a list of external objects.
92  *
93  * @param pInConvertStrategy a pointer to the strategy to use;
94  * If NULL (default value) the default strategy will be used.
95  * The given strategy will be cloned.
96  * @see pConvertStrategy
97  */
98  void setStrategy( const iConvertAreaToExtObjects * pInConvertStrategy = NULL );
99 
100 
101 };//class cUseConvertAreaToExtObjectsStrategy
102 
103 
104 };//end namespace nConvertToFib
105 };//end namespace nStructureData
106 };//end namespace nImage
107 };//end namespace nConvertToFib
108 };//end namespace algorithms
109 };//end namespace fib
110 
111 
112 #endif //___C_USE_CONVERT_AREA_TO_EXT_OBJECTS_STRATEGY_H__