8 #ifndef META_OCEAN_CV_SYNTHESIS_LAYER_H
9 #define META_OCEAN_CV_SYNTHESIS_LAYER_H
34 class OCEAN_CV_SYNTHESIS_EXPORT
Layer
42 inline unsigned int width()
const;
48 inline unsigned int height()
const;
54 inline const Frame& frame()
const;
60 inline Frame& frame();
66 inline const Frame& mask()
const;
96 explicit inline operator bool()
const;
149 unsigned int width_ = 0u;
152 unsigned int height_ = 0u;
199 inline Layer::operator bool()
const
201 return width_ != 0u && height_ != 0u;
This class implements the base class for all inpainting layers.
Definition: Layer.h:35
PixelBoundingBox boundingBox_
Optional bounding box covering all mask pixels, if defined.
Definition: Layer.h:161
unsigned int height() const
Returns the height of this layer.
Definition: Layer.h:169
unsigned int width_
Width of this synthesis layer in pixel, with range [0, infinity)
Definition: Layer.h:149
Layer & operator=(Layer &&layer) noexcept
Move operator.
Layer()=default
Creates an empty inpainting layer.
Frame frame_
Frame of the inpainting layer, never owning the memory.
Definition: Layer.h:155
virtual ~Layer()
Destructs the inpainting layer.
const Frame & mask() const
Returns the mask of this layer.
Definition: Layer.h:184
Layer & operator=(const Layer &layer)
Assign operator.
Layer(const Layer &layer)
Copy constructor.
virtual Mapping & mapping()=0
Returns the mapping of this synthesis layer.
Layer(Frame &frame, const Frame &mask, const PixelBoundingBox &boundingBox=PixelBoundingBox())
Creates a new inpainting layer by a given frame and corresponding mask.
unsigned int height_
Height of this synthesis layer in pixel, with range [0, infinity)
Definition: Layer.h:152
Frame mask_
Mask of the inpainting layer, with same dimension and pixel origin as the defined frame,...
Definition: Layer.h:158
virtual const Mapping & mapping() const =0
Returns the mapping of this synthesis layer.
unsigned int width() const
Returns the width of this layer.
Definition: Layer.h:164
Layer(Layer &&layer) noexcept
Move constructor.
const Frame & frame() const
Returns the frame of this layer.
Definition: Layer.h:174
const PixelBoundingBox & boundingBox() const
Returns the optional bounding box of this layer.
Definition: Layer.h:194
This class is the base class for all mappings.
Definition: Mapping.h:35
This class implements Ocean's image class.
Definition: Frame.h:1792
PixelBoundingBoxT< unsigned int > PixelBoundingBox
Definition of the default PixelBoundingBox object with data type allowing only positive coordinate va...
Definition: PixelBoundingBox.h:21
The namespace covering the entire Ocean framework.
Definition: Accessor.h:15