Promise getInputPromise(const std::string& portName) { if (!hasInputPort(portName)) throwPortError(portName); const auto& itPromise = _manuallySetPortsMap.find(portName); if (itPromise != _manuallySetPortsMap.end()) return itPromise->second.getPromise(); InputPort& inputPort = _inputMap.find(portName)->second; const auto& itPort = _manuallySetPortsMap.emplace( std::piecewise_construct, std::forward_as_tuple(inputPort.getName()), std::forward_as_tuple( DataInfo(inputPort.getName(), inputPort.getDataType()))); OutputPort& outputPort = itPort.first->second; inputPort.connect(outputPort); return outputPort.getPromise(); }
bool FilterTypeInfoHelper::hasPort(const QString &id) const { return hasInputPort(id) || hasOutputPort(id); }