74 const string procName =
"Port::Port";
103 const string procName =
"Port::Port";
105 format errorMsg = textGenerator.
text(
109 __FILE__, __LINE__, procName, errorMsg.str());
160 const string procName =
"Port::setName";
167 for (
int i = 0; i < parent->
portCount(); i++) {
193 string procName =
"Port::attachSocket";
203 __FILE__, __LINE__, procName, errorMsg);
243 string procName =
"Port::detachSocket";
324 const string procName =
"Port::unconnectedSocket";
326 if (index < 0 || index > 1) {
327 throw OutOfRange(__FILE__, __LINE__, procName);
359 string errorMsg =
"Too many sockets attached to a port.";
435 const string procName =
"Port::loadStateWithoutReferences";
445 __FILE__, __LINE__, procName, exception.
errorMessage());
460 const string procName =
"Port::loadState";
463 string socketName =
"";
476 format errorMsg = textGenerator.
text(
480 __FILE__, __LINE__, procName, errorMsg.str());
482 format errorMsg = textGenerator.
text(
486 __FILE__, __LINE__, procName, errorMsg.str());
488 format errorMsg = textGenerator.
text(
492 __FILE__, __LINE__, procName, errorMsg.str());
495 __FILE__, __LINE__, procName, exception.
errorMessage());
517 const string procName =
"Socket::attachSocket";
550 const std::pair<const Port*, const Port*>& pp1,
551 const std::pair<const Port*, const Port*>& pp2)
#define assert(condition)
static void abortProgram() __attribute__((noreturn))
static void writeToErrorLog(const std::string fileName, const int lineNumber, const std::string functionName, const std::string message, const int neededVerbosity=0)
std::string errorMessage() const
@ TXT_PORT_EXISTS_BY_NAME
@ TXT_PORT_REF_LOAD_ERR_SOCKET
static std::string socketPortConnectionError(const TTAMachine::Socket &socket, const TTAMachine::Port &port, const MachineTester &tester)
virtual bool canConnect(const TTAMachine::Socket &socket, const TTAMachine::Segment &segment)
static bool isValidComponentName(const std::string &name)
bool connectionExists() const
bool hasAttribute(const std::string &name) const
void setAttribute(const std::string &name, const std::string &value)
std::string stringAttribute(const std::string &name) const
virtual Machine * machine() const
virtual void ensureRegistration(const Component &component) const
virtual TCEString name() const
ComponentType * item(int index) const
virtual SocketNavigator socketNavigator() const
MachineTester & machineTester() const
virtual Socket * outputSocket() const
virtual void attachSocket(Socket &socket)
virtual int socketCount() const
std::string name_
Name of the port.
virtual bool isInput() const
Port(const std::string &name, Unit &parentUnit)
void loadStateWithoutReferences(const ObjectState *state)
Socket * socket1_
Connection to the first socket.
static const std::string OSNAME_PORT
ObjectState name for Port.
virtual void detachSocket(Socket &socket)
static const std::string OSKEY_FIRST_SOCKET
ObjectState attribute key for the name of the connected socket.
virtual Socket * unconnectedSocket(int index) const
virtual bool isOutput() const
static const std::string OSKEY_SECOND_SOCKET
ObjectState attribute key for the name of the other connected socket.
virtual void detachAllSockets()
virtual bool isConnectedTo(const Socket &socket) const
Socket * socket2_
Connection to the second socket.
Unit * parentUnit() const
virtual Socket * inputSocket() const
virtual ObjectState * saveState() const
virtual void loadState(const ObjectState *state)
virtual std::string name() const
Unit * parentUnit_
Parent unit.
static const std::string OSKEY_NAME
ObjectState attribute key for the name of the port.
virtual void setName(const std::string &name)
@ OUTPUT
Data goes from port to bus.
@ INPUT
Data goes from bus to port.
@ UNKNOWN
Unknown direction.
Direction direction() const
void detachPort(const Port &port)
void attachPort(Port &port)
virtual int portCount() const
virtual Port * port(const std::string &name) const
virtual void removePort(Port &port)
virtual boost::format text(int textId)
bool operator()(const std::pair< const Port *, const Port * > &pp1, const std::pair< const Port *, const Port * > &pp2) const