Esempio n. 1
0
void DataPool::Connection::removePort(RTT::base::PortInterface *port) {
  RTT::base::InputPortInterface *inputPort   = dynamic_cast<RTT::base::InputPortInterface *>(port);
  RTT::base::OutputPortInterface *outputPort = dynamic_cast<RTT::base::OutputPortInterface *>(port);

  if (inputPort) {
    this->internalOutputPort->disconnect(inputPort);
    inputPort->disconnect();
    readers.erase(inputPort);
  }

  if (outputPort) {
    this->internalInputPort->disconnect(outputPort);
    outputPort->disconnect();
    writers.erase(outputPort);
  }
}
Esempio n. 2
0
 ~InputProxyPort()
 {
     removeWriter();
     port->disconnect();
 }