Horizon
Loading...
Searching...
No Matches
components.hpp
1#pragma once
2#include "attribute_util.hpp"
3#include "eda_data.hpp"
4
5namespace horizon::ODB {
6
8public:
9 class Toeprint {
10 public:
11 Toeprint(const EDAData::Pin &pin) : pin_num(pin.index), toeprint_name(pin.name)
12 {
13 }
14
15 unsigned int pin_num;
16
17 Placement placement;
18 unsigned int net_num = 0;
19 unsigned int subnet_num = 0;
20 std::string toeprint_name = 0;
21
22 void write(std::ostream &ost) const;
23 };
24
26 public:
27 Component(unsigned int i, unsigned int r) : index(i), pkg_ref(r)
28 {
29 }
30 const unsigned int index;
31 unsigned int pkg_ref;
32 Placement placement;
33
34 std::string comp_name;
35 std::string part_name;
36
37 std::list<Toeprint> toeprints;
38
39 void write(std::ostream &ost) const;
40 };
41
42 std::list<Component> components;
43
44 void write(std::ostream &ost) const;
45};
46
47} // namespace horizon::ODB
Definition attribute_util.hpp:10
Definition components.hpp:25
Definition components.hpp:9
Definition components.hpp:7
Definition eda_data.hpp:185
Definition attribute_util.hpp:56
Definition placement.hpp:8