
Module: ppl/ppl Branch: floating_point Commit: 81a3ebf8481602636a20697a3ab1870d04fbba5d URL: http://www.cs.unipr.it/git/gitweb.cgi?p=ppl/ppl.git;a=commit;h=81a3ebf848160...
Author: Fabio Bossi bossi@cs.unipr.it Date: Fri Sep 18 10:11:16 2009 +0200
Added interfaces (and empty body) of two new methods.
---
src/Polyhedron.defs.hh | 14 +++++++++++++- src/Polyhedron.templates.hh | 17 +++++++++++++++++ 2 files changed, 30 insertions(+), 1 deletions(-)
diff --git a/src/Polyhedron.defs.hh b/src/Polyhedron.defs.hh index 50d27a5..62673bb 100644 --- a/src/Polyhedron.defs.hh +++ b/src/Polyhedron.defs.hh @@ -47,7 +47,10 @@ site: http://www.cs.unipr.it/ppl/ . */ #include "Box.types.hh" #include "BD_Shape.types.hh" #include "Octagonal_Shape.types.hh" +#include "Interval.types.hh" +#include "Linear_Form.types.hh" #include <vector> +#include <map> #include <iosfwd>
namespace Parma_Polyhedra_Library { @@ -1142,6 +1145,10 @@ public: Coefficient_traits::const_reference denominator = Coefficient_one());
+ template <typename FP_Format, typename Interval_Info> + void affine_image(const Variable& var, + const Linear_Form<Interval <FP_Format, Interval_Info> >& lf); + /*! \brief Assigns to \p *this the \ref Single_Update_Affine_Functions "affine preimage" @@ -2559,8 +2566,13 @@ protected: //@} // Exception Throwers #endif // defined(PPL_DOXYGEN_INCLUDE_IMPLEMENTATION_DETAILS)
-}; + template <typename FP_Format, typename Interval_Info> + static void overapproximate_linear_form( + const Linear_Form<Interval <FP_Format, Interval_Info> >& lf, + const std::map< dimension_type, Interval<FP_Format, Interval_Info> >& store, + Linear_Form<Interval <FP_Format, Interval_Info> >& result);
+};
namespace std {
diff --git a/src/Polyhedron.templates.hh b/src/Polyhedron.templates.hh index 86e8619..4c49c85 100644 --- a/src/Polyhedron.templates.hh +++ b/src/Polyhedron.templates.hh @@ -25,7 +25,10 @@ site: http://www.cs.unipr.it/ppl/ . */
#include "Generator.defs.hh" #include "MIP_Problem.defs.hh" +#include "Interval.defs.hh" +#include "Linear_Form.defs.hh" #include <algorithm> +#include <map> #include <deque>
namespace Parma_Polyhedra_Library { @@ -293,6 +296,20 @@ Polyhedron::map_space_dimensions(const Partial_Function& pfunc) { PPL_ASSERT_HEAVY(OK(true)); }
+template <typename FP_Format, typename Interval_Info> +void +Polyhedron::affine_image(const Variable& var, + const Linear_Form<Interval <FP_Format, Interval_Info> >& lf) { +} + +template <typename FP_Format, typename Interval_Info> +void +Polyhedron::overapproximate_linear_form( + const Linear_Form<Interval <FP_Format, Interval_Info> >& lf, + const std::map< dimension_type, Interval<FP_Format, Interval_Info> >& store, + Linear_Form<Interval <FP_Format, Interval_Info> >& result) { +} + } // namespace Parma_Polyhedra_Library
#endif // !defined(PPL_Polyhedron_templates_hh)