My Project
template/labelmap.hh
Go to the documentation of this file.
1
/* -*- mia-c++ -*-
2
*
3
* This file is part of MIA - a toolbox for medical image analysis
4
* Copyright (c) Leipzig, Madrid 1999-2017 Gert Wollny
5
*
6
* MIA is free software; you can redistribute it and/or modify
7
* it under the terms of the GNU General Public License as published by
8
* the Free Software Foundation; either version 3 of the License, or
9
* (at your option) any later version.
10
*
11
* This program is distributed in the hope that it will be useful,
12
* but WITHOUT ANY WARRANTY; without even the implied warranty of
13
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
* GNU General Public License for more details.
15
*
16
* You should have received a copy of the GNU General Public License
17
* along with MIA; if not, see <http://www.gnu.org/licenses/>.
18
*
19
*/
20
21
#ifndef mia_template_labelmap_hh
22
#define mia_template_labelmap_hh
23
24
#include <
mia/core/filter.hh
>
25
#include <
mia/core/labelmap.hh
>
26
#include <map>
27
28
NS_MIA_BEGIN
29
30
template
<
class
Image>
31
class
TLabelMapFilter
:
public
TDataFilter
<Image> {
32
std::map<size_t, size_t> m_map;
33
public
:
34
35
typedef
typename
TDataFilter<Image>::result_type
result_type
;
36
37
TLabelMapFilter
(
const
CLabelMap
& lmap);
38
39
template
<
class
TImage>
40
typename
TLabelMapFilter<Image>::result_type
operator ()
(
const
TImage& data)
const
;
41
42
private
:
43
virtual
typename
TLabelMapFilter<Image>::result_type
do_filter(
const
Image
& image)
const
;
44
45
};
46
47
template
<
class
Image>
48
class
TLabelMapFilterPlugin
:
public
TDataFilterPlugin
<Image> {
49
public
:
50
TLabelMapFilterPlugin
();
51
virtual
TDataFilter<Image>
*
do_create
()
const
;
52
virtual
const
std::string
do_get_descr
()
const
;
53
54
private
:
55
std::string m_map;
56
};
57
58
NS_END
59
60
#endif
TLabelMapFilterPlugin
Definition:
template/labelmap.hh:48
CLabelMap
A simple class to add loadind and storeing to a map of labels.
Definition:
core/labelmap.hh:36
TLabelMapFilter
Definition:
template/labelmap.hh:31
NS_MIA_BEGIN
#define NS_MIA_BEGIN
conveniance define to start the mia namespace
Definition:
defines.hh:33
TLabelMapFilter::operator()
TLabelMapFilter< Image >::result_type operator()(const TImage &data) const
labelmap.hh
TLabelMapFilterPlugin::do_get_descr
virtual const std::string do_get_descr() const
TDataFilter< Image >::Image
Image Image
defines the image type handled by the image filter
Definition:
core/filter.hh:95
TDataFilter
Generic interface class to data filters.
Definition:
core/filter.hh:86
TLabelMapFilter::result_type
TDataFilter< Image >::result_type result_type
Definition:
template/labelmap.hh:35
NS_END
#define NS_END
conveniance define to end a namespace
Definition:
defines.hh:45
TLabelMapFilter::TLabelMapFilter
TLabelMapFilter(const CLabelMap &lmap)
TLabelMapFilterPlugin::TLabelMapFilterPlugin
TLabelMapFilterPlugin()
TLabelMapFilterPlugin::do_create
virtual TDataFilter< Image > * do_create() const
filter.hh
TDataFilterPlugin
Generic image filter plugin base.
Definition:
core/filter.hh:178
mia
template
labelmap.hh
Generated by
1.8.17