|
Public Types |
typedef std::slist< PDBM
>::const_iterator | const_iterator |
Public Member Functions |
| | pfed_t () |
| | Allocate empty priced federation of dimension 0.
|
| | pfed_t (cindex_t dim) |
| | Allocate empty priced federation of dimension dim.
|
| | pfed_t (const PDBM pdbm, cindex_t dim) |
| | Allocate a priced federation of dimension dim initialised to pdbm.
|
| | pfed_t (const pfed_t &) |
| | The copy constructor implements copy on write.
|
| | ~pfed_t () |
| | The destructor decrements the reference count and deallocates the priced DBM when the count reaches zero.
|
| bool | constrain (cindex_t i, uint32_t value) |
| | Constrain x(i) to value.
|
| bool | constrain (cindex_t i, cindex_t j, raw_t constraint) |
| | Constrain federation to valuations satisfying x(i) - x(j) ~ constraint.
|
| bool | constrain (cindex_t i, cindex_t j, int32_t b, bool isStrict) |
| | Constrain federation to valuations satisfying x(i) - x(j) ~ (b, isStrict).
|
| bool | constrain (const constraint_t *constraints, size_t n) |
| | Constrain federation to valuations satisfying the constraints.
|
| bool | constrain (const constraint_t &c) |
| | Constrain federation to valuations satisfying c.
|
| int32_t | getInfimum () const |
| | Returns the infimum of the federation.
|
| bool | satisfies (const constraint_t &c) const |
| | Check if the federation satisfies a given constraint.
|
| bool | satisfies (cindex_t i, cindex_t j, raw_t constraint) const |
| | Check if the federation satisfies a given constraint.
|
| bool | isEmpty () const |
| | Returns true iff the federation is empty.
|
| bool | isUnbounded () const |
| uint32_t | hash (uint32_t seed) const |
| | Contains a hash of the federation.
|
| bool | contains (const DoubleValuation &v) const |
| | Returns true iff the federation contains .
|
| bool | contains (const IntValuation &v) const |
| | Returns true iff the federation contains .
|
| void | up () |
| | Delay with the current delay rate.
|
| void | up (int32_t rate) |
| | Delay with rate rate.
|
| void | updateValue (cindex_t clock, uint32_t value) |
| | Set x(clock) to value.
|
| void | updateValueZero (cindex_t clock, int32_t value, cindex_t zero) |
| | Set x(clock) to value.
|
| void | extrapolateMaxBounds (int32_t *max) |
| void | diagonalExtrapolateMaxBounds (int32_t *max) |
| void | diagonalExtrapolateLUBounds (int32_t *lower, int32_t *upper) |
| void | incrementCost (int32_t value) |
| int32_t | getCostOfValuation (const IntValuation &valuation) const |
| void | relax () |
| void | freeClock (cindex_t clock) |
| void | setZero () |
| | Resets the federation to the federation containing only the origin, with a cost of 0.
|
| void | setInit () |
| | Resets the federation to the federation containing all valuations, with a cost of 0.
|
| void | setEmpty () |
| | Resets the federation to the empty federation.
|
| const_iterator | begin () const |
| | Returns an iterator to the first zone of the federation.
|
| const_iterator | end () const |
| | Returns an iterator to the position after the last zone of the federation.
|
| bool | operator== (const pfed_t &) const |
| pfed_t & | operator= (const pfed_t &) |
| | Assignment operator.
|
| pfed_t & | operator= (const PDBM) |
| | Assignment operator.
|
| pfed_t & | operator|= (const pfed_t &) |
| | Union operator.
|
| pfed_t & | operator|= (const PDBM) |
| | Union operator.
|
| pfed_t & | operator-= (const pfed_t &) |
| | Not implemented.
|
| pfed_t & | operator+= (const pfed_t &) |
| | Not implemented.
|
| pfed_t & | operator &= (const pfed_t &) |
| | Not implemented.
|
| bool | intersects (const pfed_t &) const |
| | Not implemented.
|
| pfed_t | operator & (const pfed_t &b) const |
| | Not implemented.
|
| pfed_t | operator- (const pfed_t &b) const |
| | Not implemented.
|
| void | down () |
| | Not implemented.
|
| int32_t | getUpperMinimumCost (cindex_t) const |
| | Not implemented.
|
| void | relaxUp () |
| | Not implemented.
|
| void | getValuation (DoubleValuation &cval, bool *freeC=NULL) const |
| | Not implemented.
|
| void | swapClocks (cindex_t, cindex_t) |
| | Not implemented.
|
| void | splitExtrapolate (const constraint_t *, const constraint_t *, const int32_t *) |
| | Not implemented.
|
| relation_t | relation (const pfed_t &fed) const |
| | Relation between two priced federations: SUBSET is returned if all zones of this federation are contained in some zone of fed.
|
| int32_t | getInfimumValuation (IntValuation &valuation, const bool *free=NULL) const |
| | Returns the infimum of the federation given a partial valuation.
|
| size_t | size () const |
| | Returns the number of zones in the federation.
|
| size_t | getDimension () const |
| | Returns the dimension of the federation.
|
| void | freeUp (cindex_t) |
| | Implementation of the free up operation for priced federations.
|
| void | freeDown (cindex_t) |
| | Implementation of the free down operation for priced federations.
|
| template<typename Predicate> |
| void | erase_if (Predicate p) |
| template<typename Predicate> |
| void | erase_if_not (Predicate p) |
| raw_t | operator() (cindex_t i, cindex_t j) const |
| | Returns the bound on x(i) - x(j) of the first zone of the federation.
|
| int32_t | getRate (cindex_t) const |
| size_t | analyzeForMinDBM (uint32_t *bitMatrix) const |
| int32_t | getOffsetCost () const |
| int32_t | getSlopeOfDelayTrajectory () const |
| void | setOffsetCost (int32_t) |
| void | setRate (cindex_t, int32_t) |
| int32_t * | writeToMinDBMWithOffset (bool minimizeGraph, bool tryConstraints16, allocator_t c_alloc, uint32_t offset) const |
| relation_t | relation (const int32_t *, raw_t *) const |
| bool | isOnZeroCycle (cindex_t clock, cindex_t &result) const |
| | Returns true and a clock in result that is on a zero cycle with clock or false if no such clock exists.
|
| const pfed_t & | const_dbmt () const |
Static Public Member Functions |
| static size_t | getSizeOfMinDBM (size_t dimension, const int32_t *) |
| static pfed_t | readFromMinDBM (size_t dimension, const int32_t *) |
Protected Types |
typedef std::slist< PDBM
>::iterator | iterator |
Protected Member Functions |
| void | incRef () |
| | Increment reference count.
|
| void | decRef () |
| | Decrement reference count.
|
| void | prepare () |
| | Prepare federation for modification.
|
| iterator | beginMutable () |
| | Returns a mutable iterator to the beginning of the federation.
|
| iterator | endMutable () |
| | Returns a mutable iterator to the end of the federation.
|
| iterator | erase (iterator) |
| | Erases a DBM from the federation and returns an itertor to the successor element.
|
| void | add (const PDBM pdbm, size_t dim) |
| | Adds pdbm to the federation.
|
Protected Attributes |
| pfed_s * | ptr |
| | Pointer to record holding the federation.
|
Static Protected Attributes |
| static std::allocator< pfed_s > | alloc |
Classes |
| struct | pfed_s |
Priced federations implement copy on write using reference counting.