Horizon
pnp.hpp
1 #pragma once
2 #include "common/lut.hpp"
3 #include "util/placement.hpp"
4 
5 namespace horizon {
6 
7 enum class PnPColumn {
8  MPN,
9  VALUE,
10  MANUFACTURER,
11  REFDES,
12  PACKAGE,
13  X,
14  Y,
15  ANGLE,
16  SIDE,
17 };
18 
19 extern const LutEnumStr<PnPColumn> pnp_column_lut;
20 extern const std::map<PnPColumn, std::string> pnp_column_names;
21 
22 class PnPRow {
23 public:
24  std::string MPN;
25  std::string value;
26  std::string manufacturer;
27  std::string refdes;
28  std::string package;
29  Placement placement;
30 
31  enum class Side { TOP, BOTTOM };
32  Side side;
33 
34  std::string get_column(PnPColumn col) const;
35 };
36 } // namespace horizon