Milena (Olena)
User documentation 2.0a Id
Main Page
Related Pages
Modules
Namespaces
Classes
All
Classes
Namespaces
Functions
Variables
Typedefs
Enumerator
Groups
Pages
sample_utils.hh
1
// Copyright (C) 2008, 2009, 2010 EPITA Research and Development
2
// Laboratory (LRDE)
3
//
4
// This file is part of Olena.
5
//
6
// Olena is free software: you can redistribute it and/or modify it under
7
// the terms of the GNU General Public License as published by the Free
8
// Software Foundation, version 2 of the License.
9
//
10
// Olena is distributed in the hope that it will be useful,
11
// but WITHOUT ANY WARRANTY; without even the implied warranty of
12
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13
// General Public License for more details.
14
//
15
// You should have received a copy of the GNU General Public License
16
// along with Olena. If not, see <http://www.gnu.org/licenses/>.
17
//
18
// As a special exception, you may use this file as part of a free
19
// software project without restriction. Specifically, if other files
20
// instantiate templates or use macros or inline functions from this
21
// file, or you compile this file and link it with other files to produce
22
// an executable, this file does not by itself cause the resulting
23
// executable to be covered by the GNU General Public License. This
24
// exception does not however invalidate any other reasons why the
25
// executable file might be covered by the GNU General Public License.
26
27
#ifndef DOC_TOOLS_SAMPLE_UTILS_HH
28
# define DOC_TOOLS_SAMPLE_UTILS_HH
29
30
# include <mln/core/image/image2d.hh>
31
# include <mln/io/pbm/all.hh>
32
# include <mln/io/pgm/all.hh>
33
# include <mln/io/ppm/all.hh>
34
35
# include "doc/tools/data.hh"
36
37
namespace
doc
38
{
39
40
inline
41
std::string
42
file(
const
std::string& name,
const
std::string& extension)
43
{
44
static
int
file_id = 1;
45
46
std::ostringstream os;
47
os << MLN_DOC_DIR
"/figures/"
48
<< name
49
<<
"-"
50
<< file_id++
51
<<
"."
52
<< extension;
53
return
os.str();
54
}
55
56
template
<
typename
I>
57
inline
58
void
59
ppmsave(
const
mln::Image<I>
& ima,
const
std::string& name)
60
{
61
mln::io::ppm::save
(ima, file(name,
"ppm"
));
62
}
63
64
template
<
typename
I>
65
inline
66
void
67
pbmsave(
const
mln::Image<I>
& ima,
const
std::string& name)
68
{
69
mln::io::pbm::save
(ima, file(name,
"pbm"
));
70
}
71
72
template
<
typename
I>
73
inline
74
void
75
pgmsave(
const
mln::Image<I>
& ima,
const
std::string& name)
76
{
77
mln::io::pgm::save
(ima, file(name,
"pgm"
));
78
}
79
80
inline
81
void
82
begin_output()
83
{
84
std::cout <<
"// \\{"
<< std::endl;
85
}
86
87
inline
88
void
89
end_output()
90
{
91
std::cout <<
"// \\}"
<< std::endl;
92
}
93
94
}
// end of namespace doc
95
96
#endif // ! DOC_TOOLS_SAMPLE_UTILS_HH
97
doc
tools
sample_utils.hh
Generated on Thu Nov 8 2012 10:58:20 for Milena (Olena) by
1.8.2-20120930