33#ifndef TTA_FU_IMPLEMENTATION_HH
34#define TTA_FU_IMPLEMENTATION_HH
48class FUPortImplementation;
64 const std::string& name,
83 bool hasOpcode(
const std::string& operation)
const;
84 int opcode(
const std::string& operation)
const;
97 const std::string& architectureName)
const;
101 const std::string& name,
const std::string& type,
102 const std::string& value);
void removeParameter(const std::string &name)
FUPortImplementation & architecturePort(int index) const
std::map< std::string, int > OpcodeMap
Map type for operation codes.
ParameterTable parameters_
Contains the parameters.
HDB::Parameter Parameter
Parameter of FU implementation.
void setGlockReqPort(const std::string &name)
void addArchitecturePort(FUPortImplementation *port)
Parameter parameter(int index) const
void unsetOpcode(const std::string &operation)
void setOpcodePort(const std::string &name)
bool hasOpcode(const std::string &operation) const
std::vector< FUExternalPort * > ExternalPortTable
Vector type for FUExternalPort.
std::string glockReqPort_
Name of the global lock request port.
std::string glockReqPort() const
virtual ~FUImplementation()
bool hasParameter(const std::string &name) const
std::vector< FUPortImplementation * > PortTable
Vector type for FUPortImplementation.
std::string opcodeOperation(int index) const
void deleteExternalPort(FUExternalPort *port)
int externalPortCount() const
std::string opcodePort_
Name of the opcode port.
OpcodeMap opcodes_
Contains the operation codes.
void addExternalPort(FUExternalPort *port)
int architecturePortCount() const
void addParameter(const std::string &name, const std::string &type, const std::string &value)
void deleteArchitecturePort(FUPortImplementation *port)
FUPortImplementation & portImplementationByArchitectureName(const std::string &architectureName) const
int parameterCount() const
std::vector< Parameter > ParameterTable
Vector type for parameter names.
PortTable ports_
Contains the architectural ports.
FUExternalPort & externalPort(int index) const
std::string opcodePort() const
int opcode(const std::string &operation) const
ExternalPortTable externalPorts_
Contains the external ports.
void setOpcode(const std::string &operation, int opcode)
int maxOpcodeWidth() const
std::string glockPort() const
std::string rstPort() const
std::string clkPort() const