Public Member Functions | Public Attributes | Protected Member Functions | List of all members
ImageMod Class Reference

Class for operations that modify an existing image instead of producing a new image. More...

#include <ImageMod.h>

Inheritance diagram for ImageMod:
Inheritance graph
[legend]
Collaboration diagram for ImageMod:
Collaboration graph
[legend]

Public Member Functions

virtual int srcAlpha () const
 Tell if alpha channel(s) is required in input. More...
 
virtual void process (Image &dst) const
 Run this modifier for an image. More...
 
virtual void traverseChannels (ImageTray< Channel > &dst) const
 Run this modifier for a set of channels. More...
 
virtual void traverseChannel (Channel &dst) const
 Run this modifier for an image frame. More...
 
virtual void traverseChannel (Channel &dst, Channel &dstAlpha) const
 Run this modifier for an image frame. More...
 
virtual void help (std::ostream &ostr=std::cout) const
 
virtual void traverseChannels (ImageFrame &dst) const
 Converts dst to ImageTray<Channel> and calls traverseFrame(ImageTray<Channel> &) .
 
- Public Member Functions inherited from BeanLike
virtual const std::string & getName () const
 Return the name of an instance.
 
virtual const std::string & getDescription () const
 Return a brief description.
 
bool hasParameters () const
 
template<class F >
getParameter (const std::string &p) const
 Gets a single parameter.
 
const ReferenceMapgetParameters () const
 
ReferenceMapgetParameters ()
 
template<class F >
void setParametersFromEntries (const F &args)
 
void setParameters (std::initializer_list< Variable::init_pair_t > args)
 Grants access to (if above hidden)
 
virtual void setParameters (const std::string &p, char assignmentSymbol='=', char separatorSymbol=0)
 Sets comma-separated parameters in a predetermined order "a,b,c" or by specifing them "b=2". More...
 
template<class T >
void setParameters (const std::map< std::string, T > &args)
 Set parameters.
 
template<class T >
void setParameters (const SmartMap< T > &args)
 Set parameters.
 
void setParameter (const std::string &p, const Castable &value)
 Sets a single parameter.
 
template<class T >
void setParameter (const std::string &p, const VariableT< T > &value)
 
template<class F >
void setParameter (const std::string &p, const F &value)
 Sets a single parameter. More...
 
template<class F >
void setParameter (const std::string &p, std::initializer_list< F > value)
 Sets a single parameter.
 
BeanLikeoperator= (const BeanLike &b)
 
virtual std::ostream & toStream (std::ostream &ostr, bool compact=true) const
 
 BeanLike (const BeanLike &b)
 
 BeanLike (const std::string &name, const std::string &description="")
 

Public Attributes

bool physicalScale
 

Protected Member Functions

 ImageMod (const std::string &name=__FUNCTION__, const std::string &description="")
 
 ImageMod (const ImageMod &op)
 
virtual void processChannelsSeparately (ImageTray< Channel > &dst) const
 Run this modifier by calling traverseChannel(Channel &) for each image.
 
virtual void initialize (Image &dst) const
 Modifies the geometry and the type of dst such that traverseChannel(Channel &) can be called.
 
virtual void initializeAlpha (const Image &srcAlpha, Image &dstAlpha) const
 Modifies the geometry and the type of dst such that traverseChannel(Channel &) can be called.
 
- Protected Member Functions inherited from BeanLike
virtual void storeLastArguments (const std::string &p)
 Called after setParameters()
 
virtual void updateBean () const
 Called after setParameters()
 

Additional Inherited Members

- Protected Attributes inherited from BeanLike
const std::string name
 
const std::string description
 
ReferenceMap parameters
 

Detailed Description

Class for operations that modify an existing image instead of producing a new image.

Constructor & Destructor Documentation

◆ ImageMod()

ImageMod ( const std::string &  name = __FUNCTION__,
const std::string &  description = "" 
)
inlineprotected
Parameters
weight_supported- not supported (0), flexibly supported (1) or required (2)
in_place- 0 = separate dst required, 1 = separate dst encouraged, 2 = dst is allowed to be src

Member Function Documentation

◆ process()

void process ( Image dst) const
virtual

Run this modifier for an image.

The default implementation redirects to traverseChannel(Channel & dst) .

Reimplemented in ImageSampler.

◆ srcAlpha()

virtual int srcAlpha ( ) const
inlinevirtual

Tell if alpha channel(s) is required in input.

Future option: 0: not used 1: optional, supported 2: required

Reimplemented in FastAverageWeightedOp, DistanceTransformFillOp< T >, DistanceTransformFillOp< DistanceModelExponential >, and DistanceTransformFillOp< DistanceModelLinear >.

◆ traverseChannel() [1/2]

virtual void traverseChannel ( Channel dst) const
inlinevirtual

Run this modifier for an image frame.

The default implementation calls applyToEachChannel(Channel &) for each image. Run this modifier for an image frame. The default implementation calls traverseFrame(ChannelView & dst) for each image.

Reimplemented in ImageGeometry, ImageHistogram, ImageFill, ImageEncoding, ImageCoordPolicy, and ImageChannels.

◆ traverseChannel() [2/2]

virtual void traverseChannel ( Channel dst,
Channel dstAlpha 
) const
inlinevirtual

Run this modifier for an image frame.

The default implementation calls traverseFrame(ChannelView & dst) for each image.

◆ traverseChannels()

void traverseChannels ( ImageTray< Channel > &  dst) const
virtual

Run this modifier for a set of channels.

The default implementation forwards to applyToEachChannel(ImageTray<Channel> & dst) & dst)

By definition of Channel, geometries and types will be unaltered.

Reimplemented in ImageBox, ImagePlot, and ImageFill.


The documentation for this class was generated from the following files: