TuttleOFX  1
base.hpp File Reference
#include <boost/mpl/vector.hpp>
#include <boost/gil/gil_all.hpp>
#include <boost/gil/pixel.hpp>
#include <boost/gil/locator.hpp>
#include <boost/gil/typedefs.hpp>
#include <terry/numeric/init.hpp>
Include dependency graph for base.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  terry::color::IColorParams
 Base class of all color parameters class. More...
struct  terry::color::None
 Fake class to finish hierachy. More...
struct  terry::color::IsRootReference
 Fake class to finish hierachy. More...

Namespaces

namespace  terry
namespace  terry::color

Defines

#define TERRY_DEFINE_GIL_INTERNALS_4(CS)
#define TERRY_DEFINE_GIL_INTERNALS_3(CS)
#define TERRY_GIL_DEFINE_BASE_TYPEDEFS_INTERNAL(T, CS, LAYOUT)
#define TERRY_GIL_DEFINE_ALL_TYPEDEFS_INTERNAL(T, CS, CS_FULL, LAYOUT)
#define TERRY_DEFINE_ALL_TYPEDEFS(T, CS)   TERRY_GIL_DEFINE_ALL_TYPEDEFS_INTERNAL(T,CS,color::CS##_colorspace_t,color::CS##_layout_t)
#define TERRY_DEFINE_COLORSPACE_STANDARD_TYPEDEFS(CS)

Define Documentation

#define TERRY_DEFINE_ALL_TYPEDEFS (   T,
  CS 
)    TERRY_GIL_DEFINE_ALL_TYPEDEFS_INTERNAL(T,CS,color::CS##_colorspace_t,color::CS##_layout_t)

Definition at line 81 of file base.hpp.

#define TERRY_DEFINE_COLORSPACE_STANDARD_TYPEDEFS (   CS)
Value:
TERRY_DEFINE_ALL_TYPEDEFS(8,  CS) \
        TERRY_DEFINE_ALL_TYPEDEFS(8s, CS) \
        TERRY_DEFINE_ALL_TYPEDEFS(16, CS) \
        TERRY_DEFINE_ALL_TYPEDEFS(16s,CS) \
        TERRY_DEFINE_ALL_TYPEDEFS(32 ,CS) \
        TERRY_DEFINE_ALL_TYPEDEFS(32s,CS) \
        TERRY_DEFINE_ALL_TYPEDEFS(32f,CS)

Definition at line 84 of file base.hpp.

#define TERRY_DEFINE_GIL_INTERNALS_3 (   CS)
Value:
\
        template <typename IC> \
        inline typename type_from_x_iterator<planar_pixel_iterator<IC,color::CS##_colorspace_t> >::view_t \
        planar_##CS##_view(std::size_t width, std::size_t height, \
                                        IC a, IC b, IC c, \
                                        std::ptrdiff_t rowsize_in_bytes) { \
                typedef typename type_from_x_iterator<planar_pixel_iterator<IC,color::CS##_colorspace_t> >::view_t RView; \
                return RView(width, height, \
                                         typename RView::locator(planar_pixel_iterator<IC,color::CS##_colorspace_t>(a,b,c), \
                                                                                         rowsize_in_bytes)); \
        }

Definition at line 26 of file base.hpp.

#define TERRY_DEFINE_GIL_INTERNALS_4 (   CS)
Value:
\
        template <typename IC> \
        inline typename type_from_x_iterator<planar_pixel_iterator<IC,color::CS##_colorspace_t> >::view_t \
        planar_##CS##_view(std::size_t width, std::size_t height, IC a, IC b, IC c, IC d, std::ptrdiff_t rowsize_in_bytes) { \
                typedef typename type_from_x_iterator<planar_pixel_iterator<IC,color::CS##_colorspace_t> >::view_t RView; \
                return RView(width, height, typename RView::locator(planar_pixel_iterator<IC,color::CS##_colorspace_t>(a,b,c,d), rowsize_in_bytes)); \
        }

Definition at line 16 of file base.hpp.

#define TERRY_GIL_DEFINE_ALL_TYPEDEFS_INTERNAL (   T,
  CS,
  CS_FULL,
  LAYOUT 
)
Value:
TERRY_GIL_DEFINE_BASE_TYPEDEFS_INTERNAL(T,CS,LAYOUT)                                                                    \
    typedef planar_pixel_reference<bits##T&,CS_FULL >                                          CS##T##_planar_ref_t;        \
    typedef planar_pixel_reference<const bits##T&,CS_FULL >                                      CS##T##c_planar_ref_t;        \
    typedef planar_pixel_iterator<bits##T*,CS_FULL >                                          CS##T##_planar_ptr_t;        \
    typedef planar_pixel_iterator<const bits##T*,CS_FULL >                                      CS##T##c_planar_ptr_t;        \
    typedef memory_based_step_iterator<CS##T##_planar_ptr_t>                              CS##T##_planar_step_ptr_t;    \
    typedef memory_based_step_iterator<CS##T##c_planar_ptr_t>                              CS##T##c_planar_step_ptr_t;    \
    typedef memory_based_2d_locator<memory_based_step_iterator<CS##T##_planar_ptr_t> >          CS##T##_planar_loc_t;        \
    typedef memory_based_2d_locator<memory_based_step_iterator<CS##T##c_planar_ptr_t> >      CS##T##c_planar_loc_t;        \
    typedef memory_based_2d_locator<memory_based_step_iterator<CS##T##_planar_step_ptr_t> >  CS##T##_planar_step_loc_t;    \
    typedef memory_based_2d_locator<memory_based_step_iterator<CS##T##c_planar_step_ptr_t> > CS##T##c_planar_step_loc_t;    \
    typedef image_view<CS##T##_planar_loc_t>                                      CS##T##_planar_view_t;        \
    typedef image_view<CS##T##c_planar_loc_t>                                      CS##T##c_planar_view_t;        \
    typedef image_view<CS##T##_planar_step_loc_t>                                  CS##T##_planar_step_view_t;    \
    typedef image_view<CS##T##c_planar_step_loc_t>                                  CS##T##c_planar_step_view_t;\
    typedef image<CS##T##_pixel_t,true,std::allocator<unsigned char> >              CS##T##_planar_image_t;

Definition at line 63 of file base.hpp.

#define TERRY_GIL_DEFINE_BASE_TYPEDEFS_INTERNAL (   T,
  CS,
  LAYOUT 
)
Value:
typedef pixel<bits##T, LAYOUT >                        CS##T##_pixel_t;        \
    typedef const pixel<bits##T, LAYOUT >                   CS##T##c_pixel_t;        \
    typedef pixel<bits##T, LAYOUT >&                      CS##T##_ref_t;            \
    typedef const pixel<bits##T, LAYOUT >&                CS##T##c_ref_t;            \
    typedef CS##T##_pixel_t*                                               CS##T##_ptr_t;            \
    typedef CS##T##c_pixel_t*                                               CS##T##c_ptr_t;            \
    typedef memory_based_step_iterator<CS##T##_ptr_t>                               CS##T##_step_ptr_t;        \
    typedef memory_based_step_iterator<CS##T##c_ptr_t>                               CS##T##c_step_ptr_t;    \
    typedef memory_based_2d_locator<memory_based_step_iterator<CS##T##_ptr_t> >       CS##T##_loc_t;            \
    typedef memory_based_2d_locator<memory_based_step_iterator<CS##T##c_ptr_t> >       CS##T##c_loc_t;            \
    typedef memory_based_2d_locator<memory_based_step_iterator<CS##T##_step_ptr_t> >  CS##T##_step_loc_t;        \
    typedef memory_based_2d_locator<memory_based_step_iterator<CS##T##c_step_ptr_t> > CS##T##c_step_loc_t;    \
    typedef image_view<CS##T##_loc_t>                                        CS##T##_view_t;            \
    typedef image_view<CS##T##c_loc_t>                                        CS##T##c_view_t;        \
    typedef image_view<CS##T##_step_loc_t>                                    CS##T##_step_view_t;    \
    typedef image_view<CS##T##c_step_loc_t>                                   CS##T##c_step_view_t;    \
    typedef image<CS##T##_pixel_t,false,std::allocator<unsigned char> >           CS##T##_image_t;

Definition at line 42 of file base.hpp.