Main Page
Related Pages
Modules
Data Structures
Files
File List
Globals
mia
mesh
mesh/filter.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-2013 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_mesh_filter_hh
22
#define mia_mesh_filter_hh
23
24
#include <
mia/mesh/triangularMesh.hh
>
25
#include <
mia/core/factory.hh
>
26
#include <
mia/template/filter_chain.hh
>
27
28
NS_MIA_BEGIN
29
34
typedef
TDataFilter<CTriangleMesh>
CMeshFilter
;
35
40
typedef
TDataFilterPlugin<CTriangleMesh>
CMeshFilterPlugin
;
41
46
typedef
std::shared_ptr<CMeshFilter >
PMeshFilter
;
47
52
typedef
THandlerSingleton<TFactoryPluginHandler<CMeshFilterPlugin>
>
CMeshFilterPluginHandler
;
53
58
struct
EXPORT_MESH
CMeshFilterPluginHandlerTestPath {
59
CMeshFilterPluginHandlerTestPath();
60
};
62
64
FACTORY_TRAIT
(
CMeshFilterPluginHandler
);
66
70
inline
PMeshFilter
produce_mesh_filter
(
const
char
* descr)
71
{
72
return
CMeshFilterPluginHandler::instance
().produce(descr);
73
}
74
75
80
typedef
TFilterChain<CMeshFilterPluginHandler>
CMeshFilterChain
;
89
PTriangleMesh
EXPORT_MESH
run_filter_chain
(
PTriangleMesh
mesh,
const
std::vector<const char *>& filters);
90
98
PTriangleMesh
EXPORT_MESH
run_filter
(
const
CTriangleMesh
& mesh,
const
char
*
filter
);
99
107
inline
PTriangleMesh
run_filter
(
PTriangleMesh
mesh,
const
char
*
filter
)
108
{
109
return
run_filter
(*mesh, filter);
110
}
111
112
113
114
NS_MIA_END
115
116
117
#endif
Generated on Tue Oct 15 2013 13:56:37 by
1.8.4