Boost GIL


Public Types | Public Member Functions | List of all members
any_image_view< Views > Class Template Reference

Represents a run-time specified image view. Models HasDynamicXStepTypeConcept, HasDynamicYStepTypeConcept, Note that this class does NOT model ImageViewConcept. More...

#include <any_image_view.hpp>

Inherits variant< Views... >.

Public Types

using const_t = detail::views_get_const_t< any_image_view >
 
using x_coord_t = std::ptrdiff_t
 
using y_coord_t = std::ptrdiff_t
 
using point_t = point< std::ptrdiff_t >
 
using size_type = std::size_t
 

Public Member Functions

any_image_viewoperator= (any_image_view const &view)
 
template<typename View >
any_image_viewoperator= (View const &view)
 
template<typename ... OtherViews>
any_image_viewoperator= (any_image_view< OtherViews... > const &view)
 
std::size_t num_channels () const
 
point_t dimensions () const
 
size_type size () const
 
x_coord_t width () const
 
y_coord_t height () const
 

Detailed Description

template<typename ... Views>
class boost::gil::any_image_view< Views >

Represents a run-time specified image view. Models HasDynamicXStepTypeConcept, HasDynamicYStepTypeConcept, Note that this class does NOT model ImageViewConcept.

CLASS any_image_view

Represents a view whose type (color space, layout, planar/interleaved organization, etc) can be specified at run time. It is the runtime equivalent of image_view. Some of the requirements of ImageViewConcept, such as the value_type alias cannot be fulfilled, since the language does not allow runtime type specification. Other requirements, such as access to the pixels, would be inefficient to provide. Thus any_image_view does not fully model ImageViewConcept. However, many algorithms provide overloads taking runtime specified views and thus in many cases any_image_view can be used in places taking a view.

To perform an algorithm on any_image_view, put the algorithm in a function object and invoke it by calling variant2::visit(algorithm_fn, runtime_view);


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