Parma_Polyhedra_Library::BD_Shape< T >::Status Class Reference
[C++ Language Interface]

A conjunctive assertion about a BD_Shape<T> object. More...

List of all members.

Public Member Functions

 Status ()
 By default Status is the zero-dim universe assertion.
bool OK () const
 Checks if all the invariants are satisfied.
void ascii_dump () const
 Writes to std::cerr an ASCII representation of *this.
void ascii_dump (std::ostream &s) const
 Writes to s an ASCII representation of *this.
void print () const
 Prints *this to std::cerr using operator<<.
bool ascii_load (std::istream &s)
 Loads from s an ASCII representation (as produced by ascii_dump) and sets *this accordingly. Returns true if successful, false otherwise.
Test, remove or add an individual assertion from the conjunction.
bool test_zero_dim_univ () const
void reset_zero_dim_univ ()
void set_zero_dim_univ ()
bool test_empty () const
void reset_empty ()
void set_empty ()
bool test_shortest_path_closed () const
void reset_shortest_path_closed ()
void set_shortest_path_closed ()
bool test_shortest_path_reduced () const
void reset_shortest_path_reduced ()
void set_shortest_path_reduced ()

Private Types

typedef unsigned int flags_t
 Status is implemented by means of a finite bitset.

Private Member Functions

 Status (flags_t mask)
 Construct from a bit-mask.
bool test_all (flags_t mask) const
 Check whether all bits in mask are set.
bool test_any (flags_t mask) const
 Check whether at least one bit in mask is set.
void set (flags_t mask)
 Set the bits in mask.
void reset (flags_t mask)
 Reset the bits in mask.

Private Attributes

flags_t flags
 This holds the current bitset.

Static Private Attributes

Bit-masks for the individual assertions.
static const flags_t ZERO_DIM_UNIV = 0U
static const flags_t EMPTY = 1U << 0
static const flags_t SHORTEST_PATH_CLOSED = 1U << 1
static const flags_t SHORTEST_PATH_REDUCED = 1U << 2


Detailed Description

template<typename T>
class Parma_Polyhedra_Library::BD_Shape< T >::Status

A conjunctive assertion about a BD_Shape<T> object.

The assertions supported are:

Not all the conjunctions of these elementary assertions constitute a legal Status. In fact:

Definition at line 1205 of file BD_Shape.defs.hh.


Member Typedef Documentation

template<typename T>
typedef unsigned int Parma_Polyhedra_Library::BD_Shape< T >::Status::flags_t [private]

Status is implemented by means of a finite bitset.

Definition at line 1243 of file BD_Shape.defs.hh.


Constructor & Destructor Documentation

template<typename T>
Parma_Polyhedra_Library::BD_Shape< T >::Status::Status (  ) 

By default Status is the zero-dim universe assertion.

template<typename T>
Parma_Polyhedra_Library::BD_Shape< T >::Status::Status ( flags_t  mask  )  [private]

Construct from a bit-mask.


Member Function Documentation

template<typename T>
bool Parma_Polyhedra_Library::BD_Shape< T >::Status::test_zero_dim_univ (  )  const

template<typename T>
void Parma_Polyhedra_Library::BD_Shape< T >::Status::reset_zero_dim_univ (  ) 

template<typename T>
void Parma_Polyhedra_Library::BD_Shape< T >::Status::set_zero_dim_univ (  ) 

template<typename T>
bool Parma_Polyhedra_Library::BD_Shape< T >::Status::test_empty (  )  const

template<typename T>
void Parma_Polyhedra_Library::BD_Shape< T >::Status::reset_empty (  ) 

template<typename T>
void Parma_Polyhedra_Library::BD_Shape< T >::Status::set_empty (  ) 

template<typename T>
bool Parma_Polyhedra_Library::BD_Shape< T >::Status::test_shortest_path_closed (  )  const

template<typename T>
void Parma_Polyhedra_Library::BD_Shape< T >::Status::reset_shortest_path_closed (  ) 

template<typename T>
void Parma_Polyhedra_Library::BD_Shape< T >::Status::set_shortest_path_closed (  ) 

template<typename T>
bool Parma_Polyhedra_Library::BD_Shape< T >::Status::test_shortest_path_reduced (  )  const

template<typename T>
void Parma_Polyhedra_Library::BD_Shape< T >::Status::reset_shortest_path_reduced (  ) 

template<typename T>
void Parma_Polyhedra_Library::BD_Shape< T >::Status::set_shortest_path_reduced (  ) 

template<typename T>
bool Parma_Polyhedra_Library::BD_Shape< T >::Status::OK (  )  const

Checks if all the invariants are satisfied.

Referenced by Parma_Polyhedra_Library::BD_Shape< T >::OK().

template<typename T>
void Parma_Polyhedra_Library::BD_Shape< T >::Status::ascii_dump (  )  const

Writes to std::cerr an ASCII representation of *this.

Referenced by Parma_Polyhedra_Library::BD_Shape< T >::ascii_dump().

template<typename T>
void Parma_Polyhedra_Library::BD_Shape< T >::Status::ascii_dump ( std::ostream &  s  )  const

Writes to s an ASCII representation of *this.

template<typename T>
void Parma_Polyhedra_Library::BD_Shape< T >::Status::print (  )  const

Prints *this to std::cerr using operator<<.

template<typename T>
bool Parma_Polyhedra_Library::BD_Shape< T >::Status::ascii_load ( std::istream &  s  ) 

Loads from s an ASCII representation (as produced by ascii_dump) and sets *this accordingly. Returns true if successful, false otherwise.

Referenced by Parma_Polyhedra_Library::BD_Shape< T >::ascii_load().

template<typename T>
bool Parma_Polyhedra_Library::BD_Shape< T >::Status::test_all ( flags_t  mask  )  const [private]

Check whether all bits in mask are set.

template<typename T>
bool Parma_Polyhedra_Library::BD_Shape< T >::Status::test_any ( flags_t  mask  )  const [private]

Check whether at least one bit in mask is set.

template<typename T>
void Parma_Polyhedra_Library::BD_Shape< T >::Status::set ( flags_t  mask  )  [private]

Set the bits in mask.

template<typename T>
void Parma_Polyhedra_Library::BD_Shape< T >::Status::reset ( flags_t  mask  )  [private]

Reset the bits in mask.


Member Data Documentation

template<typename T>
const flags_t Parma_Polyhedra_Library::BD_Shape< T >::Status::ZERO_DIM_UNIV = 0U [static, private]

Definition at line 1247 of file BD_Shape.defs.hh.

template<typename T>
const flags_t Parma_Polyhedra_Library::BD_Shape< T >::Status::EMPTY = 1U << 0 [static, private]

Definition at line 1248 of file BD_Shape.defs.hh.

template<typename T>
const flags_t Parma_Polyhedra_Library::BD_Shape< T >::Status::SHORTEST_PATH_CLOSED = 1U << 1 [static, private]

Definition at line 1249 of file BD_Shape.defs.hh.

template<typename T>
const flags_t Parma_Polyhedra_Library::BD_Shape< T >::Status::SHORTEST_PATH_REDUCED = 1U << 2 [static, private]

Definition at line 1250 of file BD_Shape.defs.hh.

template<typename T>
flags_t Parma_Polyhedra_Library::BD_Shape< T >::Status::flags [private]

This holds the current bitset.

Definition at line 1254 of file BD_Shape.defs.hh.


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

Generated on Wed Jul 16 22:55:53 2008 for PPL by  doxygen 1.5.6