#include "pins.hpp" #include "parts.hpp" #include "signals.hpp" Pin::Pin(std::string name) : SystemElement(name), sig(nullptr), prnt(nullptr), expected_signal_type(SignalType::Other) {}; const char *nc_origin_tag(NcOrigin o) { switch (o) { case NcOrigin::ImportedUnconnected: return "U"; case NcOrigin::DroppedSingleton: return "D"; case NcOrigin::None: return ""; } return ""; } bool nc_origin_from_tag(const std::string &tag, NcOrigin &out) { if (tag == "U") { out = NcOrigin::ImportedUnconnected; return true; } if (tag == "D") { out = NcOrigin::DroppedSingleton; return true; } return false; } bool Pin::connected() { return sig != nullptr; } void Pin::connect(Signal *signal) { sig = signal; } Pins::Pins(void) : SystemElementContainer("pins") {} Pins::Pins(std::vector pins) : SystemElementContainer("pins", pins) {}