From 0b10df571d84f466cbbd3faf5f7d5ee718d065c8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Philipp=20M=C3=B6ller?= Date: Tue, 23 Oct 2012 14:32:10 +0000 Subject: [PATCH] move doc into property_map.h itself --- .gitattributes | 1 - Documentation/doxyassist.xml | 10 +- .../doc/Property_map/CGAL/property_map.h | 351 ------------------ .../include/CGAL/property_map.h | 111 +++--- 4 files changed, 54 insertions(+), 419 deletions(-) delete mode 100644 Point_set_processing_3/doc/Property_map/CGAL/property_map.h diff --git a/.gitattributes b/.gitattributes index 4bd1acc6140..10a2d5491e2 100644 --- a/.gitattributes +++ b/.gitattributes @@ -4772,7 +4772,6 @@ Point_set_processing_3/doc/Point_set_processing_3/fig/mst_orient_normals.jpg -te Point_set_processing_3/doc/Point_set_processing_3/fig/pipeline.jpg -text svneol=unset#image/jpeg Point_set_processing_3/doc/Point_set_processing_3/fig/point_set_processing.jpg -text svneol=unset#image/jpeg Point_set_processing_3/doc/Point_set_processing_3/fig/point_set_processing_detail.png -text svneol=unset#image/png -Point_set_processing_3/doc/Property_map/CGAL/property_map.h -text Point_set_processing_3/doc/Property_map/PackageDescription.txt -text Point_set_processing_3/doc/Property_map/Property_map.txt -text Point_set_processing_3/doc/Property_map/examples.txt -text diff --git a/Documentation/doxyassist.xml b/Documentation/doxyassist.xml index a1de364b427..d3399803dc4 100644 --- a/Documentation/doxyassist.xml +++ b/Documentation/doxyassist.xml @@ -1199,6 +1199,7 @@ namespace for the XML file to be processed properly. --> ./tags/Triangulation_2.tag ../Triangulation_2/doc/Triangulation_2/fig ../Triangulation_2/examples + true ./tags/TDS_2.tag=../../CGAL.CGAL.2D-Triangulation-Data-Structure/html ./tags/Triangulation_3.tag=../../CGAL.CGAL.3D-Triangulation/html @@ -1258,10 +1259,11 @@ namespace for the XML file to be processed properly. --> CGAL and Boost Property Maps - ../Point_set_processing_3/doc/Property_map + ../Point_set_processing_3/doc/Property_map/ + ../Point_set_processing_3/include/CGAL/property_map.h - ../Point_set_processing_3/doc/Property_map - ../Point_set_processing_3/doc/Property_map + ../Point_set_processing_3/include + ../Point_set_processing_3/include ./tags/Property_map.tag ../Point_set_processing_3/doc/Property_map/fig ../Point_set_processing_3/examples @@ -1277,7 +1279,7 @@ namespace for the XML file to be processed properly. --> ../Point_set_processing_3/doc/Point_set_processing_3 ../Point_set_processing_3/include - ../Point_set_processing_3/doc/Point_set_processing_3 + ../Point_set_processing_3/include ../Point_set_processing_3/include ./tags/Point_set_processing_3.tag ../Point_set_processing_3/doc/Point_set_processing_3/fig diff --git a/Point_set_processing_3/doc/Property_map/CGAL/property_map.h b/Point_set_processing_3/doc/Property_map/CGAL/property_map.h deleted file mode 100644 index fd70d779eec..00000000000 --- a/Point_set_processing_3/doc/Property_map/CGAL/property_map.h +++ /dev/null @@ -1,351 +0,0 @@ - -namespace CGAL { - -/*! -\ingroup PkgProperty_map - -Property map that converts a `T*` pointer (or in general an iterator -over `T` elements) to the `T` object. - -\models `LvaluePropertyMap` - -*/ -template< typename T > -class Dereference_property_map : - public boost::put_get_helper< T&, - Dereference_property_map > { -public: - - /// \name Types - /// @{ - - /*! - - typedef to `T*` - - */ - typedef Hidden_type key_type; - - /*! - - typedef to `T` - - */ - typedef Hidden_type value_type; - - /*! - - typedef to `T&` - - */ - typedef Hidden_type reference; - - /*! - - `boost::lvalue_property_map_tag` - - */ - typedef Hidden_type category; - - /// @} - - /// \name Creation - /// @{ - - /*! - - %Default constructor. - - */ - Dereference_property_map(); - - /// @} - - /// \name Operations - /// @{ - - /*! - - Access a property map element. - - \tparam Iter Type convertible to `key_type`. - */ - template reference operator[](Iter it) const; - - - /// @} - -}; /* end Dereference_property_map */ - -/*! - -Free function to create a `Dereference_property_map` property map. - -\relates Dereference_property_map -*/ -Dereference_property_map::type> make_dereference_property_map(Iter); - - -/*! -\ingroup PkgProperty_map - -Property map that accesses the first item of a `std::pair`. - -\tparam Pair Instance of `std::pair`. - -\models `LvaluePropertyMap` - -\sa `CGAL::Second_of_pair_property_map` - - -*/ -template< typename Pair > -class First_of_pair_property_map : - public boost::put_get_helper< Pair::first_type&, First_of_pair_property_map > -{ -public: - - /// \name Types - /// @{ - - /*! - - typedef to `Pair*` - - */ - typedef Hidden_type key_type; - - /*! - - typedef to `Pair::first_type` - - */ - typedef Hidden_type value_type; - - /*! - - typedef to `value_type`& - - */ - typedef Hidden_type reference; - - /*! - - `boost::lvalue_property_map_tag` - - */ - typedef Hidden_type category; - - /// @} - - /// \name Creation - /// @{ - - /*! - - Default constructor. - - */ - First_of_pair_property_map(); - - /// @} - - /// \name Operations - /// @{ - - /*! - - Access a property map element. - - \tparam Iter Type convertible to `key_type`. - - */ - template reference operator[](Iter pair) const; - - /// @} - -}; /* end First_of_pair_property_map */ - -/*! -Free function to create a `First_of_pair_property_map` property map. - -\relates First_of_pair_property_map -*/ -First_of_pair_property_map::type> make_first_of_pair_property_map(Iter); - - -/*! -\ingroup PkgProperty_map - -Property map that accesses the Nth item of a `boost::tuple`. - -\tparam N Index of the item to access. -\tparam Tuple Instance of `boost::tuple`. - -\models `LvaluePropertyMap` - -*/ -template< typename N, typename Tuple > -class Nth_of_tuple_property_map : - public boost::put_get_helper< boost::tuples::element::type& , Nth_of_tuple_property_map> { -public: - - /// \name Types - /// @{ - - /*! - - typedef to `Tuple*` - - */ - typedef Hidden_type key_type; - - /*! - - typedef to `boost::tuples::element::%type` - - */ - typedef Hidden_type value_type; - - /*! - - typedef to `value_type`& - - */ - typedef Hidden_type reference; - - /*! - - `boost::lvalue_property_map_tag` - - */ - typedef Hidden_type category; - - /// @} - - /// \name Creation - /// @{ - - /*! - - %Default constructor. - - */ - Nth_of_tuple_property_map(); - - /// @} - - /// \name Operations - /// @{ - - /*! - - Access a property map element. - - \tparam Iter Type convertible to `key_type`. - - */ - template reference operator[](Iter tuple) const; - - - /// @} - -}; /* end Nth_of_tuple_property_map */ - -/*! - -Free function to create a `Nth_of_tuple_property_map` property map. - -\relates Nth_of_tuple_property_map -*/ -Nth_of_tuple_property_map::type> make_nth_of_tuple_property_map(Iter); - - -/*! -\ingroup PkgProperty_map - -Property map that accesses the second item of a `std::pair`. - -\tparam Pair Instance of `std::pair`. - -\models `LvaluePropertyMap` - -\sa `CGAL::First_of_pair_property_map` - -*/ -template< typename Pair > -class Second_of_pair_property_map : public -boost::put_get_helper< Pair::second_type& , Second_of_pair_property_map> -{ -public: - - /// \name Types - /// @{ - - /*! - - typedef to `Pair*` - - */ - typedef Hidden_type key_type; - - /*! - - typedef to `Pair::second_type` - - */ - typedef Hidden_type value_type; - - /*! - - typedef to `value_type`& - - */ - typedef Hidden_type reference; - - /*! - - `boost::lvalue_property_map_tag` - - */ - typedef Hidden_type category; - - /// @} - - /// \name Creation - /// @{ - - /*! - - %Default constructor. - - */ - Second_of_pair_property_map(); - - /// @} - - /// \name Operations - /// @{ - - /*! - Access a property map element. - - \tparam Iter Type convertible to `key_type`. - - */ - template reference operator[](Iter pair) const; - - - /// @} - -}; /* end Second_of_pair_property_map */ - -/*! -Free function to create a `Second_of_pair_property_map` property map. - -\relates Second_of_pair_property_map -*/ -Second_of_pair_property_map::type> make_second_of_pair_property_map(Iter); - - -} /* end namespace CGAL */ diff --git a/Point_set_processing_3/include/CGAL/property_map.h b/Point_set_processing_3/include/CGAL/property_map.h index d7da5ac53b2..691b82c7027 100644 --- a/Point_set_processing_3/include/CGAL/property_map.h +++ b/Point_set_processing_3/include/CGAL/property_map.h @@ -17,9 +17,6 @@ // // Author(s) : Andreas Fabri and Laurent Saboret -//WARNING: The documentation is not generated using this file -/// \cond SKIP_IN_MANUAL - #ifndef CGAL_POINT_SET_PROPERTY_MAP_H #define CGAL_POINT_SET_PROPERTY_MAP_H @@ -38,12 +35,11 @@ namespace CGAL { -/// Property map that converts a 'T*' pointer (or in general -/// an iterator over 'T' elements) to the 'T' object. +/// \ingroup PkgProperty_map +/// Property map that converts a `T*` pointer (or in general an iterator +/// over `T` elements) to the `T` object. /// -/// @heading Is Model for the Concepts: -/// Model of boost::LvaluePropertyMap concept. - +/// \models `LvaluePropertyMap` template struct Dereference_property_map : public boost::put_get_helper > @@ -51,62 +47,55 @@ struct Dereference_property_map typedef T* key_type; ///< typedef to 'T*' typedef T value_type; ///< typedef to 'T' typedef value_type& reference; ///< typedef to 'T&' - typedef boost::lvalue_property_map_tag category; ///< boost::lvalue_property_map_tag + typedef boost::lvalue_property_map_tag category; ///< `boost::lvalue_property_map_tag` /// Access a property map element. /// - /// @tparam Iter Type convertible to key_type. + /// @tparam Iter Type convertible to `key_type`. template reference operator[](Iter it) const { return reference(*it); } }; -/// Free function to create a Dereference_property_map property map. +/// Free function to create a `Dereference_property_map` property map. /// -/// @relates Dereference_property_map - -template // Type convertible to key_type +/// \relates Dereference_property_map +template // Type convertible to `key_type` Dereference_property_map::type> make_dereference_property_map(Iter) { - // value_type_traits is a workaround as back_insert_iterator's value_type is void + // value_type_traits is a workaround as back_insert_iterator's `value_type` is void return Dereference_property_map::type>(); } //========================================================================= -// Property maps Pair* -> Pair::first_type -// and Pair* -> Pair::second_type. - -/// Property map that accesses the first item of a std::pair. +/// \ingroup PkgProperty_map +/// Property map that accesses the first item of a `std::pair`. +/// \tparam Pair Instance of `std::pair`. +/// \models `LvaluePropertyMap` /// -/// @heading Is Model for the Concepts: -/// Model of boost::LvaluePropertyMap concept. -/// -/// @heading Parameters: -/// @param Pair Instance of std::pair. - +/// \sa `CGAL::Second_of_pair_property_map` template struct First_of_pair_property_map : public boost::put_get_helper > { typedef Pair* key_type; ///< typedef to 'Pair*' - typedef typename Pair::first_type value_type; ///< typedef to Pair::first_type - typedef value_type& reference; ///< typedef to value_type& + typedef typename Pair::first_type value_type; ///< typedef to `Pair::first_type` + typedef value_type& reference; ///< typedef to `value_type&` typedef boost::lvalue_property_map_tag category; ///< boost::lvalue_property_map_tag /// Access a property map element. /// - /// @tparam Iter Type convertible to key_type. + /// @tparam Iter Type convertible to `key_type`. template reference operator[](Iter pair) const { return reference(pair->first); } }; -/// Free function to create a First_of_pair_property_map property map. +/// Free function to create a `First_of_pair_property_map` property map. /// -/// @relates First_of_pair_property_map - +/// \relates First_of_pair_property_map template // Type convertible to key_type First_of_pair_property_map::type> make_first_of_pair_property_map(Iter) @@ -115,35 +104,35 @@ make_first_of_pair_property_map(Iter) return First_of_pair_property_map::type>(); } -/// Property map that accesses the second item of a std::pair. -/// -/// @heading Is Model for the Concepts: -/// Model of boost::LvaluePropertyMap concept. -/// -/// @heading Parameters: -/// @param Pair Instance of std::pair. - +/// \ingroup PkgProperty_map +/// +/// Property map that accesses the second item of a `std::pair`. +/// +/// \tparam Pair Instance of `std::pair`. +/// +/// \models `LvaluePropertyMap` +/// +/// \sa `CGAL::First_of_pair_property_map` template struct Second_of_pair_property_map : public boost::put_get_helper > { typedef Pair* key_type; ///< typedef to 'Pair*' - typedef typename Pair::second_type value_type; ///< typedef to Pair::second_type - typedef value_type& reference; ///< typedef to value_type& - typedef boost::lvalue_property_map_tag category; ///< boost::lvalue_property_map_tag + typedef typename Pair::second_type value_type; ///< typedef to `Pair::second_type` + typedef value_type& reference; ///< typedef to `value_type&` + typedef boost::lvalue_property_map_tag category; ///< `boost::lvalue_property_map_tag` /// Access a property map element. /// - /// @tparam Iter Type convertible to key_type. + /// @tparam Iter Type convertible to `key_type`. template reference operator[](Iter pair) const { return reference(pair->second); } }; /// Free function to create a Second_of_pair_property_map property map. /// -/// @relates Second_of_pair_property_map - +/// \relates Second_of_pair_property_map template // Type convertible to key_type Second_of_pair_property_map::type> make_second_of_pair_property_map(Iter) @@ -156,47 +145,43 @@ make_second_of_pair_property_map(Iter) //========================================================================= -/// Property map that accesses the Nth item of a boost::tuple. -/// -/// @heading Is Model for the Concepts: -/// Model of boost::LvaluePropertyMap concept. -/// -/// @heading Parameters: -/// @param N Index of the item to access. -/// @param Tuple Instance of boost::tuple. - +/// \ingroup PkgProperty_map +/// +/// Property map that accesses the Nth item of a `boost::tuple`. +/// +/// \tparam N Index of the item to access. +/// \tparam Tuple Instance of `boost::tuple`. +/// +/// \models `LvaluePropertyMap` template struct Nth_of_tuple_property_map : public boost::put_get_helper::type&, Nth_of_tuple_property_map > { typedef Tuple* key_type; ///< typedef to 'Tuple*' - typedef typename boost::tuples::element::type value_type; ///< typedef to boost::tuples::element::type - typedef value_type& reference; ///< typedef to value_type& - typedef boost::lvalue_property_map_tag category; ///< boost::lvalue_property_map_tag + typedef typename boost::tuples::element::type value_type; ///< typedef to `boost::tuples::element::%type` + typedef value_type& reference; ///< typedef to `value_type&` + typedef boost::lvalue_property_map_tag category; ///< `boost::lvalue_property_map_tag` /// Access a property map element. /// - /// @tparam Iter Type convertible to key_type. + /// @tparam Iter Type convertible to `key_type`. template reference operator[](Iter tuple) const { return (reference) tuple->template get(); } }; /// Free function to create a Nth_of_tuple_property_map property map. /// -/// @relates Nth_of_tuple_property_map - +/// \relates Nth_of_tuple_property_map template // Type convertible to key_type Nth_of_tuple_property_map::type> make_nth_of_tuple_property_map(Iter) { - // value_type_traits is a workaround as back_insert_iterator's value_type is void + // value_type_traits is a workaround as back_insert_iterator's `value_type` is void return Nth_of_tuple_property_map::type>(); } } // namespace CGAL -/// \endcond - #endif // CGAL_POINT_SET_PROPERTY_MAP_H