#pragma once #include #include #include "Observer.h" #include "Net.h" class Gate: Observer { private: std::string label; std::string type; std::vector inputs; std::vector outputs; public: Gate(/* args */); ~Gate(); virtual void addInput(Net*); virtual void addOutput(Net*); }; class GateAnd