33#ifndef TTA_ASSIGNMENT_PLAN_HH
34#define TTA_ASSIGNMENT_PLAN_HH
117 std::vector<std::pair<ResourceBroker*, SchedulingResource*> >
void setRequest(int cycle, MoveNode &node, const TTAMachine::Bus *bus, const TTAMachine::FunctionUnit *srcFU, const TTAMachine::FunctionUnit *dstFU, int immWriteCycle, const TTAMachine::ImmediateUnit *immu, int immRegIndex)
const TTAMachine::Bus * bus_
MoveNode * node_
Move of current resource assignment request.
MoveNode * lastTriedNode_
bool isTestedAssignmentPossible()
std::vector< ResourceBroker * > brokers_
Sequence of resource brokers.
std::vector< PendingAssignment * > applicableAssignments_
Sequence of applicable pending assignments.
ResourceBroker & lastBroker()
std::vector< std::pair< ResourceBroker *, SchedulingResource * > > lastTestedWorkingAssignment_
cache.
ResourceBroker & nextBroker(ResourceBroker &pos)
bool tryCachedAssignment(MoveNode &node, int cycle, const TTAMachine::Bus *bus, const TTAMachine::FunctionUnit *srcFU, const TTAMachine::FunctionUnit *dstFU, int immWriteCycle, const TTAMachine::ImmediateUnit *immu, int immRegIndex)
void insertBroker(ResourceBroker &broker)
ResourceBroker & firstBroker()
ResourceBroker & currentBroker()
const TTAMachine::ImmediateUnit * immu_
virtual ~AssignmentPlan()
const TTAMachine::FunctionUnit * srcFU_
int cycle_
Cycle in which current node should be placed.
std::vector< PendingAssignment * > assignments_
Sequence of pending assignments.
const TTAMachine::FunctionUnit * dstFU_
bool resourceFound_
True if a valid resource of current broker has been assigned.
int currentBroker_
Current broker.
ResourceBroker & broker(int index) const