|
OpenASIP 2.2
|
#include <AssignmentQueue.hh>

Public Member Functions | |
| AssignmentQueue (int maxLatency) | |
| ~AssignmentQueue () | |
| void | addAssignment (const SimValue &assignValue, SimValue *assignTarget, int latency) |
| void | advanceClock () |
Private Types | |
| typedef std::pair< SimValue, SimValue * > | Assignment |
| Type for the assignment: source value -> destination pointer. | |
| typedef std::deque< std::deque< Assignment > > | Assignments |
| Type for the stored assignments. | |
Private Member Functions | |
| AssignmentQueue (const AssignmentQueue &) | |
| Copying not allowed. | |
| AssignmentQueue & | operator= (const AssignmentQueue &) |
| Assignment not allowed. | |
Private Attributes | |
| Assignments | assignmentQueue_ |
| Our assignment queue. | |
| int | position_ |
| Position in the ring buffer. | |
| int | maxLatency_ |
| Maximum possible latency. | |
This class is used for delayed assignments of SimValues to given targets.
The implementation uses std::vector for a simple ring buffer Buffer size is directly the maximum possible latency
Definition at line 48 of file AssignmentQueue.hh.
|
private |
Type for the assignment: source value -> destination pointer.
Definition at line 66 of file AssignmentQueue.hh.
|
private |
Type for the stored assignments.
Definition at line 69 of file AssignmentQueue.hh.
| AssignmentQueue::AssignmentQueue | ( | int | maxLatency | ) |
The constructor
Definition at line 40 of file AssignmentQueue.cc.
References assignmentQueue_, and maxLatency_.
| AssignmentQueue::~AssignmentQueue | ( | ) |
|
private |
Copying not allowed.
|
inline |
|
inline |
|
private |
Assignment not allowed.
|
private |
Our assignment queue.
Definition at line 72 of file AssignmentQueue.hh.
Referenced by AssignmentQueue().
|
private |
Maximum possible latency.
Definition at line 78 of file AssignmentQueue.hh.
Referenced by AssignmentQueue().
|
private |
Position in the ring buffer.
Definition at line 75 of file AssignmentQueue.hh.