3 #include "../odbdesign_export.h"
10 #include "../ProtoBuf/pinconnection.pb.h"
11 #include "../IProtoBuffable.h"
14 namespace Odb::Lib::ProductModel
19 PinConnection(std::shared_ptr<Component> pComponent, std::shared_ptr<Pin> pPin);
20 PinConnection(std::shared_ptr<Component> pComponent, std::shared_ptr<Pin> pPin, std::string name);
23 std::shared_ptr<Pin> GetPin()
const;
24 std::shared_ptr<Component> GetComponent()
const;
26 std::string MakeName(std::shared_ptr<Odb::Lib::ProductModel::Component>& pComponent, std::shared_ptr<Odb::Lib::ProductModel::Pin>& pPin);
29 std::unique_ptr<Odb::Lib::Protobuf::ProductModel::PinConnection> to_protobuf()
const override;
30 void from_protobuf(
const Odb::Lib::Protobuf::ProductModel::PinConnection& message)
override;
32 typedef std::vector<std::shared_ptr<PinConnection>> Vector;
33 typedef std::map<std::string, std::shared_ptr<PinConnection>> StringMap;
37 std::shared_ptr<Component> m_pComponent;
38 std::shared_ptr<Pin> m_pPin;