SourceXtractorPlusPlus
0.13
Please provide a description of the project.
SEFramework
SEFramework
Image
ProcessingImageSource.h
Go to the documentation of this file.
1
17
/*
18
* ProcessingImageSource.h
19
*
20
* Created on: May 2, 2018
21
* Author: mschefer
22
*/
23
24
#ifndef _SEFRAMEWORK_IMAGE_PROCESSINGIMAGESOURCE_H_
25
#define _SEFRAMEWORK_IMAGE_PROCESSINGIMAGESOURCE_H_
26
27
#include "
SEFramework/Image/Image.h
"
28
#include "
SEFramework/Image/ImageSource.h
"
29
30
namespace
SourceXtractor
{
31
32
template
<
typename
T>
33
class
ProcessingImageSource
:
public
ImageSource
,
public
std::enable_shared_from_this
<ImageSource> {
34
public
:
35
36
ProcessingImageSource
(
std::shared_ptr
<
Image<T>
> image) :
m_image
(image) {}
37
38
virtual
~ProcessingImageSource
() =
default
;
39
40
std::shared_ptr<ImageTile>
getImageTile
(
int
x
,
int
y
,
int
width,
int
height)
const override
{
41
auto
tile =
ImageTile::create
(
ImageTile::getTypeValue
(T()),
x
,
y
, width, height, (
const_cast<
ProcessingImageSource
*
>
(
this
))->
shared_from_this
());
42
43
generateTile
(
m_image
, *tile,
x
,
y
, width, height);
44
45
return
tile;
46
}
47
48
void
saveTile
(
ImageTile
&
/*tile*/
)
override
{
49
assert(
false
);
50
}
51
53
int
getWidth
()
const override
{
54
return
m_image
->getWidth();
55
}
56
58
int
getHeight
()
const override
{
59
return
m_image
->getHeight();
60
}
61
62
ImageTile::ImageType
getType
()
const override
{
63
return
ImageTile::getTypeValue
(T());
64
}
65
66
protected
:
67
virtual
void
generateTile
(
const
std::shared_ptr
<
Image<T>
>& image,
ImageTile
& tile,
int
x
,
int
y
,
int
width,
int
height)
const
= 0;
68
69
std::string
getImageRepr
()
const
{
70
return
m_image
->getRepr();
71
}
72
73
private
:
74
std::shared_ptr<Image<T>
>
m_image
;
75
};
76
77
}
78
79
80
81
#endif
/* _SEFRAMEWORK_IMAGE_PROCESSINGIMAGESOURCE_H_ */
SourceXtractor::ProcessingImageSource::getImageRepr
std::string getImageRepr() const
Definition:
ProcessingImageSource.h:69
std::string
STL class.
std::shared_ptr
STL class.
SourceXtractor::ProcessingImageSource
Definition:
ProcessingImageSource.h:33
SourceXtractor::ProcessingImageSource::saveTile
void saveTile(ImageTile &) override
Definition:
ProcessingImageSource.h:48
SourceXtractor::ImageTile::create
static std::shared_ptr< ImageTile > create(ImageType image_type, int x, int y, int width, int height, std::shared_ptr< ImageSource > source=nullptr)
Definition:
ImageTile.cpp:96
SourceXtractor::Image
Interface representing an image.
Definition:
Image.h:43
SourceXtractor::ProcessingImageSource::getWidth
int getWidth() const override
Returns the width of the image in pixels.
Definition:
ProcessingImageSource.h:53
SourceXtractor::ImageTile
Definition:
ImageTile.h:34
SourceXtractor
Definition:
Aperture.h:30
std::enable_shared_from_this< ImageSource >::shared_from_this
T shared_from_this(T... args)
SourceXtractor::ProcessingImageSource::getHeight
int getHeight() const override
Returns the height of the image in pixels.
Definition:
ProcessingImageSource.h:58
SourceXtractor::ProcessingImageSource::getImageTile
std::shared_ptr< ImageTile > getImageTile(int x, int y, int width, int height) const override
Definition:
ProcessingImageSource.h:40
SourceXtractor::ProcessingImageSource::getType
ImageTile::ImageType getType() const override
Definition:
ProcessingImageSource.h:62
std::enable_shared_from_this
SourceXtractor::ImageTile::getTypeValue
static ImageType getTypeValue(float)
Definition:
ImageTile.h:109
Image.h
SourceXtractor::ProcessingImageSource::m_image
std::shared_ptr< Image< T > > m_image
Definition:
ProcessingImageSource.h:74
SourceXtractor::ImageSource
Definition:
ImageSource.h:52
SourceXtractor::ProcessingImageSource::ProcessingImageSource
ProcessingImageSource(std::shared_ptr< Image< T >> image)
Definition:
ProcessingImageSource.h:36
x
std::shared_ptr< DependentParameter< std::shared_ptr< EngineParameter > > > x
Definition:
MoffatModelFittingTask.cpp:94
ImageSource.h
SourceXtractor::ProcessingImageSource::~ProcessingImageSource
virtual ~ProcessingImageSource()=default
y
std::shared_ptr< DependentParameter< std::shared_ptr< EngineParameter > > > y
Definition:
MoffatModelFittingTask.cpp:94
SourceXtractor::ImageTile::ImageType
ImageType
Definition:
ImageTile.h:37
SourceXtractor::ProcessingImageSource::generateTile
virtual void generateTile(const std::shared_ptr< Image< T >> &image, ImageTile &tile, int x, int y, int width, int height) const =0
Generated by
1.8.20