PPL  0.12.1
Parma_Polyhedra_Library::Limited_Widening_Function< PSET, CSYS > Class Template Reference

Wraps a limited widening method into a function object. More...

#include <Widening_Function.defs.hh>

List of all members.

Public Types

typedef void(PSET::* Limited_Widening_Method )(const PSET &, const CSYS &, unsigned *)
 The (parametric) type of a limited widening method.

Public Member Functions

 Limited_Widening_Function (Limited_Widening_Method lwm, const CSYS &cs)
 Constructor.
void operator() (PSET &x, const PSET &y, unsigned *tp=0) const
 Function-application operator.

Private Attributes

Limited_Widening_Method lw_method
 The limited widening method.
const CSYS & limiting_cs
 A constant reference to the constraint system limiting the widening.

Detailed Description

template<typename PSET, typename CSYS>
class Parma_Polyhedra_Library::Limited_Widening_Function< PSET, CSYS >

Wraps a limited widening method into a function object.

Definition at line 62 of file Widening_Function.defs.hh.


Member Typedef Documentation

template<typename PSET, typename CSYS>
typedef void(PSET::* Parma_Polyhedra_Library::Limited_Widening_Function< PSET, CSYS >::Limited_Widening_Method)(const PSET &, const CSYS &, unsigned *)

The (parametric) type of a limited widening method.

Definition at line 65 of file Widening_Function.defs.hh.


Constructor & Destructor Documentation

template<typename PSET , typename CSYS >
Parma_Polyhedra_Library::Limited_Widening_Function< PSET, CSYS >::Limited_Widening_Function ( Limited_Widening_Method  lwm,
const CSYS &  cs 
)

Constructor.

Parameters:
lwmThe limited widening method.
csThe constraint system limiting the widening.

Definition at line 45 of file Widening_Function.inlines.hh.

  : lw_method(lwm), limiting_cs(cs) {
}

Member Function Documentation

template<typename PSET , typename CSYS >
void Parma_Polyhedra_Library::Limited_Widening_Function< PSET, CSYS >::operator() ( PSET &  x,
const PSET &  y,
unsigned *  tp = 0 
) const
inline

Function-application operator.

Computes (x.*lwm)(y, cs, tp), where lwm and cs are the limited widening method and the constraint system stored at construction time.

Definition at line 53 of file Widening_Function.inlines.hh.

                                                       {
  (x.*lw_method)(y, limiting_cs, tp);
}

Member Data Documentation

template<typename PSET, typename CSYS>
const CSYS& Parma_Polyhedra_Library::Limited_Widening_Function< PSET, CSYS >::limiting_cs
private

A constant reference to the constraint system limiting the widening.

Definition at line 92 of file Widening_Function.defs.hh.

template<typename PSET, typename CSYS>
Limited_Widening_Method Parma_Polyhedra_Library::Limited_Widening_Function< PSET, CSYS >::lw_method
private

The limited widening method.

Definition at line 90 of file Widening_Function.defs.hh.


The documentation for this class was generated from the following files: