/usr/include/boost/gil/io
NameSizeModeActions
base.hpp27990644editdlrm
bit_operations.hpp37640644editdlrm
conversion_policies.hpp29580644editdlrm
device.hpp166890644editdlrm
dynamic_io_new.hpp30790644editdlrm
error.hpp5790644editdlrm
get_reader.hpp39320644editdlrm
get_read_device.hpp14030644editdlrm
get_writer.hpp24520644editdlrm
get_write_device.hpp13350644editdlrm
io.hpp36350644editdlrm
make_backend.hpp36060644editdlrm
make_dynamic_image_reader.hpp44360644editdlrm
make_dynamic_image_writer.hpp53760644editdlrm
make_reader.hpp56700644editdlrm
make_scanline_reader.hpp31080644editdlrm
make_writer.hpp45650644editdlrm
path_spec.hpp39400644editdlrm
reader_base.hpp33230644editdlrm
read_and_convert_image.hpp100300644editdlrm
read_and_convert_view.hpp100670644editdlrm
read_image.hpp100900644editdlrm
read_image_info.hpp38300644editdlrm
read_view.hpp59930644editdlrm
row_buffer_helper.hpp51720644editdlrm
scanline_read_iterator.hpp23330644editdlrm
typedefs.hpp29800644editdlrm
write_view.hpp70950644editdlrm
Edit: /usr/include/boost/gil/io/reader_base.hpp (3323B)
// // Copyright 2007-2008 Christian Henning // // Distributed under the Boost Software License, Version 1.0 // See accompanying file LICENSE_1_0.txt or copy at // http://www.boost.org/LICENSE_1_0.txt // #ifndef BOOST_GIL_IO_READER_BASE_HPP #define BOOST_GIL_IO_READER_BASE_HPP #include #include namespace boost { namespace gil { /// Reader Base Class /// /// It provides some basic functionality which is shared for all readers. /// For instance, it recreates images when necessary. It checks whether /// user supplied coordinates are valid. /// /// @tparam FormatTag A format tag, like jpeg_tag. /// @tparam ConversionPolicy Conversion policy, see coversion_policies.hpp. template< typename FormatTag , typename ConversionPolicy > struct reader_base { public: /// /// Default Constructor /// reader_base() :_cc_policy() {} /// /// Constructor /// reader_base( const ConversionPolicy& cc ) :_cc_policy( cc ) {} /// Initializes an image. But also does some check ups. /// /// @tparam Image Image which implements boost::gil's ImageConcept. /// /// @param img The image. /// @param info The image read info. template< typename Image > void init_image( Image& img , const image_read_settings< FormatTag >& settings ) { //setup( backend._settings._dim ); BOOST_ASSERT(settings._dim.x && settings._dim.y); img.recreate( settings._dim.x , settings._dim.y ); } template< typename View > void init_view( const View& view , const image_read_settings< FormatTag >& ) { setup( view.dimensions() ); } private: void setup( const point_t& /* dim */ ) { //check_coordinates( dim ); //if( dim == point_t( 0, 0 )) //{ // _settings._dim.x = _info._width; // _settings._dim.y = _info._height; //} //else //{ // _settings._dim = dim; //} } void check_coordinates( const point_t& /* dim */ ) { //using int_t = point_t::value_type; //int_t width = static_cast< int_t >( _info._width ); //int_t height = static_cast< int_t >( _info._height ); //io_error_if( ( _settings._top_left.x < 0 // || _settings._top_left.y < 0 // || dim.x < 0 // || dim.y < 0 // ) // , "User provided view has incorrect size." ); //io_error_if( ( ( width ) < _settings._top_left.x // && ( width ) <= dim.x // && ( height ) < _settings._top_left.y // && ( height ) <= dim.y ) // , "User provided view has incorrect size." ); //io_error_if( ( ( _settings._top_left.x + dim.x ) > width // || ( _settings._top_left.y + dim.y ) > height // ) // , "User provided view has incorrect size." ); } protected: ConversionPolicy _cc_policy; }; } // namespace gil } // namespace boost #endif