OpenStructure
build-dev-doc
stage
include
ost
img
image_factory.hh
Go to the documentation of this file.
1
//------------------------------------------------------------------------------
2
// This file is part of the OpenStructure project <www.openstructure.org>
3
//
4
// Copyright (C) 2008-2020 by the OpenStructure authors
5
// Copyright (C) 2003-2010 by the IPLT authors
6
//
7
// This library is free software; you can redistribute it and/or modify it under
8
// the terms of the GNU Lesser General Public License as published by the Free
9
// Software Foundation; either version 3.0 of the License, or (at your option)
10
// any later version.
11
// This library is distributed in the hope that it will be useful, but WITHOUT
12
// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
13
// FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
14
// details.
15
//
16
// You should have received a copy of the GNU Lesser General Public License
17
// along with this library; if not, write to the Free Software Foundation, Inc.,
18
// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
19
//------------------------------------------------------------------------------
20
21
/*
22
factory methods to create images, either from
23
scratch or based on some other data instance
24
25
Author: Ansgar Philippsen
26
*/
27
28
#ifndef IMG_IMAGE_FACTORY_HH
29
#define IMG_IMAGE_FACTORY_HH
30
31
#include <
ost/img/module_config.hh
>
32
#include "
extent.hh
"
33
#include "
point.hh
"
34
#include "
data_types.hh
"
35
#include "
size.hh
"
36
37
namespace
ost
{
namespace
img {
38
39
class
Data;
40
class
ImageHandle;
41
43
49
ImageHandle
DLLEXPORT_OST_IMG_BASE
CreateImage
(
const
Extent
& ext=
Extent
(),
50
DataType
type=
REAL
,
51
DataDomain
dom=
SPATIAL
);
52
54
ImageHandle
DLLEXPORT_OST_IMG_BASE
CreateImage
(
const
Size
& s,
55
DataType
type=
REAL
,
56
DataDomain
dom=
SPATIAL
);
57
58
ImageHandle
DLLEXPORT_OST_IMG_BASE
CreateImage
(
const
Size
& s,
const
Point
& o,
59
DataType
type=
REAL
,
60
DataDomain
dom=
SPATIAL
);
61
62
ImageHandle
DLLEXPORT_OST_IMG_BASE
CreateImage
(
const
Point
& p1,
const
Point
& p2,
63
DataType
type=
REAL
,
64
DataDomain
dom=
SPATIAL
);
65
66
ImageHandle
DLLEXPORT_OST_IMG_BASE
CreateImage
(
const
Point
& p1,
const
Size
& s,
67
DataType
type=
REAL
,
68
DataDomain
dom=
SPATIAL
);
69
71
/*
72
The returned image will have the extent of the given Data
73
*/
74
ImageHandle
DLLEXPORT_OST_IMG_BASE
GenerateImage
(
const
Data
& d);
75
77
80
ImageHandle
DLLEXPORT_OST_IMG_BASE
GenerateImage
(
const
Data
& d,
const
Extent
& e);
81
82
}}
// namespace
83
84
#endif
ost::img::Data
Abstract base class for data.
Definition:
data.hh:253
ost::img::Extent
Defines lower and upper valid indices.
Definition:
extent.hh:60
ost::img::ImageHandle
Manage shared instances of images.
Definition:
image_handle.hh:111
ost::img::Point
class encapsulating 1D to 3D point
Definition:
point.hh:47
ost::img::Size
class encapsulating 1D to 3D size
Definition:
size.hh:39
data_types.hh
extent.hh
module_config.hh
DLLEXPORT_OST_IMG_BASE
#define DLLEXPORT_OST_IMG_BASE
Definition:
module_config.hh:33
ost::img::CreateImage
ImageHandle DLLEXPORT_OST_IMG_BASE CreateImage(const Extent &ext=Extent(), DataType type=REAL, DataDomain dom=SPATIAL)
Create image from scratch.
ost::img::DataDomain
DataDomain
underlying data type
Definition:
data_types.hh:42
ost::img::SPATIAL
@ SPATIAL
Definition:
data_types.hh:42
ost::img::GenerateImage
ImageHandle DLLEXPORT_OST_IMG_BASE GenerateImage(const Data &d)
Create image based on some data object (ie other image or function)
ost::img::DataType
DataType
Definition:
data_types.hh:37
ost::img::REAL
@ REAL
Definition:
data_types.hh:37
ost
Definition:
base.dox:1
point.hh
size.hh
Generated by
1.9.1