PPL  1.2
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>

Public Types

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

Public Member Functions

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

Private Attributes

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

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.

47  : lw_method(lwm), limiting_cs(cs) {
48 }
Limited_Widening_Method lw_method
The limited widening method.
const CSYS & limiting_cs
A constant reference to the constraint system limiting the widening.

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.

53  {
54  (x.*lw_method)(y, limiting_cs, tp);
55 }
Limited_Widening_Method lw_method
The limited widening method.
const CSYS & limiting_cs
A constant reference to the constraint system limiting the widening.

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: