Parma_Polyhedra_Library::Octagonal_Shape< T >::Status Class Reference

A conjunctive assertion about a Octagonal_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 (std::ostream &s) const
 Writes to s an ASCII representation of the internal representation of *this.
bool ascii_load (std::istream &s)
 Loads from s an ASCII representation (as produced by ascii_dump(std::ostream&) const) 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_strongly_closed () const
void reset_strongly_closed ()
void set_strongly_closed ()

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 bitmask.
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

Bitmasks for the individual assertions.
static const flags_t ZERO_DIM_UNIV = 0U
static const flags_t EMPTY = 1U << 0
static const flags_t STRONGLY_CLOSED = 1U << 1


Detailed Description

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

A conjunctive assertion about a Octagonal_Shape<T> object.

The assertions supported are:

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

Definition at line 1676 of file Octagonal_Shape.defs.hh.


Member Typedef Documentation

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

Status is implemented by means of a finite bitset.

Definition at line 1712 of file Octagonal_Shape.defs.hh.


Constructor & Destructor Documentation

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

By default Status is the zero-dim universe assertion.

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

Construct from a bitmask.


Member Function Documentation

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

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

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

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

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

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

template<typename T>
bool Parma_Polyhedra_Library::Octagonal_Shape< T >::Status::test_strongly_closed (  )  const

template<typename T>
void Parma_Polyhedra_Library::Octagonal_Shape< T >::Status::reset_strongly_closed (  ) 

template<typename T>
void Parma_Polyhedra_Library::Octagonal_Shape< T >::Status::set_strongly_closed (  ) 

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

Checks if all the invariants are satisfied.

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

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

Writes to s an ASCII representation of the internal representation of *this.

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

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

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

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

template<typename T>
bool Parma_Polyhedra_Library::Octagonal_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::Octagonal_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::Octagonal_Shape< T >::Status::set ( flags_t  mask  )  [private]

Set the bits in mask.

template<typename T>
void Parma_Polyhedra_Library::Octagonal_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::Octagonal_Shape< T >::Status::ZERO_DIM_UNIV = 0U [static, private]

Definition at line 1716 of file Octagonal_Shape.defs.hh.

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

Definition at line 1717 of file Octagonal_Shape.defs.hh.

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

Definition at line 1718 of file Octagonal_Shape.defs.hh.

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

This holds the current bitset.

Definition at line 1722 of file Octagonal_Shape.defs.hh.


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

Generated on Sat Oct 11 10:41:18 2008 for PPL by  doxygen 1.5.6