Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:36:54

0001 //
0002 // Copyright 2005-2007 Adobe Systems Incorporated
0003 //
0004 // Distributed under the Boost Software License, Version 1.0
0005 // See accompanying file LICENSE_1_0.txt or copy at
0006 // http://www.boost.org/LICENSE_1_0.txt
0007 //
0008 #ifndef BOOST_GIL_CONCEPTS_DYNAMIC_STEP_HPP
0009 #define BOOST_GIL_CONCEPTS_DYNAMIC_STEP_HPP
0010 
0011 #include <boost/gil/concepts/fwd.hpp>
0012 #include <boost/gil/concepts/concept_check.hpp>
0013 
0014 #if defined(BOOST_CLANG)
0015 #pragma clang diagnostic push
0016 #pragma clang diagnostic ignored "-Wunknown-pragmas"
0017 #pragma clang diagnostic ignored "-Wunused-local-typedefs"
0018 #endif
0019 
0020 #if defined(BOOST_GCC) && (BOOST_GCC >= 40900)
0021 #pragma GCC diagnostic push
0022 #pragma GCC diagnostic ignored "-Wunused-local-typedefs"
0023 #endif
0024 
0025 namespace boost { namespace gil {
0026 
0027 /// \ingroup PixelIteratorConcept
0028 /// \brief Concept for iterators, locators and views that can define a type just like the given
0029 ///        iterator, locator or view, except it supports runtime specified step along the X navigation.
0030 ///
0031 /// \code
0032 /// concept HasDynamicXStepTypeConcept<typename T>
0033 /// {
0034 ///     typename dynamic_x_step_type<T>;
0035 ///         where Metafunction<dynamic_x_step_type<T> >;
0036 /// };
0037 /// \endcode
0038 template <typename T>
0039 struct HasDynamicXStepTypeConcept
0040 {
0041     void constraints()
0042     {
0043         using type = typename dynamic_x_step_type<T>::type;
0044         ignore_unused_variable_warning(type{});
0045     }
0046 };
0047 
0048 /// \ingroup PixelLocatorConcept
0049 /// \brief Concept for locators and views that can define a type just like the given locator or view,
0050 ///        except it supports runtime specified step along the Y navigation
0051 /// \code
0052 /// concept HasDynamicYStepTypeConcept<typename T>
0053 /// {
0054 ///     typename dynamic_y_step_type<T>;
0055 ///         where Metafunction<dynamic_y_step_type<T> >;
0056 /// };
0057 /// \endcode
0058 template <typename T>
0059 struct HasDynamicYStepTypeConcept
0060 {
0061     void constraints()
0062     {
0063         using type = typename dynamic_y_step_type<T>::type;
0064         ignore_unused_variable_warning(type{});
0065     }
0066 };
0067 
0068 }} // namespace boost::gil
0069 
0070 #if defined(BOOST_CLANG)
0071 #pragma clang diagnostic pop
0072 #endif
0073 
0074 #if defined(BOOST_GCC) && (BOOST_GCC >= 40900)
0075 #pragma GCC diagnostic pop
0076 #endif
0077 
0078 #endif