|
CPN
Computational Process Networks
|
#include <D4RTag.h>
Collaboration diagram for D4R::Tag:Public Member Functions | |
| Tag (uint64_t k) | |
| Tag () | |
| bool | operator< (const Tag &t) const |
| bool | operator>= (const Tag &t) const |
| bool | operator<= (const Tag &t) const |
| bool | operator> (const Tag &t) const |
| bool | operator== (const Tag &t) const |
| bool | operator!= (const Tag &t) const |
| const uint128_t & | Label () const |
| const uint128_t & | Label (const uint128_t &l) |
| const uint128_t & | Priority () const |
| const uint128_t & | Priority (const uint128_t &p) |
| uint64_t | Count () const |
| uint64_t | Count (uint64_t c) |
| uint64_t | Key () const |
| uint64_t | Key (uint64_t k) |
| uint64_t | QueueSize () const |
| uint64_t | QueueSize (uint64_t qs) |
| uint64_t | QueueKey () const |
| uint64_t | QueueKey (uint64_t k) |
Private Attributes | |
| uint128_t | label |
| uint128_t | priority |
A class to encapsulate the D4R tag.
This is implemented with keys as the lower order bits and the counters and queue size as the higher order bits as suggested in the literature. This gives a total order to the Tags so that one and only one of the nodes in the deadlock will detect the deadlock.
|
inline |
The D4R algorithm count
Definition at line 58 of file D4RTag.h.
References uint128_t::high, and label.
Referenced by D4R::Node::Block(), CPN::PseudoNode::LogState(), and D4R::Node::Transmit().
Here is the caller graph for this function:
|
inline |
|
inline |
The key of the tag
Definition at line 62 of file D4RTag.h.
References label, and uint128_t::low.
Referenced by D4R::Node::Block(), CPN::PseudoNode::LogState(), and D4R::Node::Transmit().
Here is the caller graph for this function:
|
inline |
|
inline |
|
inline |
Definition at line 76 of file D4RTag.h.
References priority.
Referenced by D4R::Node::Transmit().
Here is the caller graph for this function:
|
inline |
The key of the node blocked on the queue, this provides a total order to the tags.
Definition at line 71 of file D4RTag.h.
References uint128_t::low, and priority.
Referenced by CPN::PseudoNode::LogState(), and D4R::Node::Transmit().
Here is the caller graph for this function:
|
inline |
|
inline |
The queue size of the tag.
Definition at line 66 of file D4RTag.h.
References uint128_t::high, and priority.
Referenced by D4R::Node::Block(), CPN::PseudoNode::LogState(), and D4R::Node::Transmit().
Here is the caller graph for this function:
|
inline |
|
private |
Definition at line 79 of file D4RTag.h.
Referenced by Count(), Key(), Label(), operator<(), and operator==().
|
private |
Definition at line 80 of file D4RTag.h.
Referenced by operator<(), operator==(), Priority(), QueueKey(), and QueueSize().
1.8.5