DGtal  1.5.beta
DigitalSetSelector.ih
1  /**
2  * This program is free software: you can redistribute it and/or modify
3  * it under the terms of the GNU Lesser General Public License as
4  * published by the Free Software Foundation, either version 3 of the
5  * License, or (at your option) any later version.
6  *
7  * This program is distributed in the hope that it will be useful,
8  * but WITHOUT ANY WARRANTY; without even the implied warranty of
9  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10  * GNU General Public License for more details.
11  *
12  * You should have received a copy of the GNU General Public License
13  * along with this program. If not, see <http://www.gnu.org/licenses/>.
14  *
15  **/
16 
17 /**
18  * @file DigitalSetSelector.ih
19  * @author Jacques-Olivier Lachaud (\c jacques-olivier.lachaud@univ-savoie.fr )
20  * Laboratory of Mathematics (CNRS, UMR 5807), University of Savoie, France
21  *
22  * @author Sebastien Fourey (\c Sebastien.Fourey@greyc.ensicaen.fr )
23  * Groupe de Recherche en Informatique, Image, Automatique et
24  * Instrumentation de Caen - GREYC (CNRS, UMR 6072), ENSICAEN, France
25  *
26  * @date 2010/07/01
27  *
28  * Implementation of inline methods defined in DigitalSetSelector.h
29  *
30  * This file is part of the DGtal library.
31  */
32 
33 
34 
35 ///////////////////////////////////////////////////////////////////////////////
36 // TEMPLATE SPECIALIZATION
37 ///////////////////////////////////////////////////////////////////////////////
38 namespace DGtal {
39 
40  /**
41  * DigitalSetSelector specializarion when Preferences is
42  * SMALL_DS+LOW_VAR_DS+LOW_ITER_DS+LOW_BEL_DS
43  */
44  template <typename Domain>
45  struct DigitalSetSelector<Domain, SMALL_DS+LOW_VAR_DS+LOW_ITER_DS+LOW_BEL_DS>
46  {
47  /**
48  * Adequate digital set representation for the given preferences.
49  */
50  typedef DigitalSetBySTLVector<Domain> Type;
51  };
52 
53  /**
54  * DigitalSetSelector specializarion when Preferences is
55  * SMALL_DS+LOW_VAR_DS+HIGH_ITER_DS+LOW_BEL_DS
56  */
57  template <typename Domain>
58  struct DigitalSetSelector<Domain, SMALL_DS+LOW_VAR_DS+HIGH_ITER_DS+LOW_BEL_DS>
59  {
60  /**
61  * Adequate digital set representation for the given preferences.
62  */
63  typedef DigitalSetBySTLVector<Domain> Type;
64  };
65 
66 
67 
68 }
69 // //
70 ///////////////////////////////////////////////////////////////////////////////
71 
72