OpenASIP  2.0
Public Member Functions | Protected Attributes | List of all members
BrokerDirector Class Reference

#include <BrokerDirector.hh>

Inheritance diagram for BrokerDirector:
Inheritance graph
Collaboration diagram for BrokerDirector:
Collaboration graph

Public Member Functions

 BrokerDirector (const TTAMachine::Machine &machine, AssignmentPlan &plan)
 
virtual ~BrokerDirector ()
 
- Public Member Functions inherited from ResourceManager
 ResourceManager (const TTAMachine::Machine &machine)
 
virtual ~ResourceManager ()
 
virtual bool canAssign (int cycle, MoveNode &node, const TTAMachine::Bus *bus=nullptr, const TTAMachine::FunctionUnit *srcFU=nullptr, const TTAMachine::FunctionUnit *dstFU=nullptr, int immWriteCycle=-1, const TTAMachine::ImmediateUnit *immu=nullptr, int immRegIndex=-1) const =0
 
virtual void assign (int cycle, MoveNode &node, const TTAMachine::Bus *bus=nullptr, const TTAMachine::FunctionUnit *srcFU=nullptr, const TTAMachine::FunctionUnit *dstFU=nullptr, int immWriteCycle=-1, const TTAMachine::ImmediateUnit *immu=nullptr, int immRegIndex=-1)=0
 
virtual void unassign (MoveNode &node)=0
 
virtual int earliestCycle (MoveNode &node, const TTAMachine::Bus *bus=nullptr, const TTAMachine::FunctionUnit *srcFU=nullptr, const TTAMachine::FunctionUnit *dstFU=nullptr, int immWriteCycle=-1, const TTAMachine::ImmediateUnit *immu=nullptr, int immRegIndex=-1) const =0
 
virtual int earliestCycle (int cycle, MoveNode &node, const TTAMachine::Bus *bus=nullptr, const TTAMachine::FunctionUnit *srcFU=nullptr, const TTAMachine::FunctionUnit *dstFU=nullptr, int immWriteCycle=-1, const TTAMachine::ImmediateUnit *immu=nullptr, int immRegIndex=-1) const =0
 
virtual int latestCycle (MoveNode &node, const TTAMachine::Bus *bus=nullptr, const TTAMachine::FunctionUnit *srcFU=nullptr, const TTAMachine::FunctionUnit *dstFU=nullptr, int immWriteCycle=-1, const TTAMachine::ImmediateUnit *immu=nullptr, int immRegIndex=-1) const =0
 
virtual int latestCycle (int cycle, MoveNode &node, const TTAMachine::Bus *bus=nullptr, const TTAMachine::FunctionUnit *srcFU=nullptr, const TTAMachine::FunctionUnit *dstFU=nullptr, int immWriteCycle=-1, const TTAMachine::ImmediateUnit *immu=nullptr, int immRegIndex=-1) const =0
 
virtual bool supportsExternalAssignments () const =0
 
virtual int largestCycle () const =0
 
virtual int smallestCycle () const =0
 
const TTAMachine::Machinemachine () const
 
virtual TTAProgram::Instructioninstruction (int cycle) const =0
 

Protected Attributes

AssignmentPlanplan_
 Assignment plan. More...
 

Detailed Description

Base interface for broker directors.

Definition at line 42 of file BrokerDirector.hh.

Constructor & Destructor Documentation

◆ BrokerDirector()

BrokerDirector::BrokerDirector ( const TTAMachine::Machine machine,
AssignmentPlan plan 
)

Constructor.

Parameters
machineTarget machine.
planResource assignment plan.

Definition at line 41 of file BrokerDirector.cc.

43  :
44  ResourceManager(machine), plan_(&plan) {
45 }

◆ ~BrokerDirector()

BrokerDirector::~BrokerDirector ( )
virtual

Destructor.

Definition at line 50 of file BrokerDirector.cc.

50  {
51 }

Member Data Documentation

◆ plan_

AssignmentPlan* BrokerDirector::plan_
protected

The documentation for this class was generated from the following files:
ResourceManager::ResourceManager
ResourceManager(const TTAMachine::Machine &machine)
Definition: ResourceManager.cc:40
BrokerDirector::plan_
AssignmentPlan * plan_
Assignment plan.
Definition: BrokerDirector.hh:49
ResourceManager::machine
const TTAMachine::Machine & machine() const
Definition: ResourceManager.cc:56