Horizon
board_layers.hpp
1 #pragma once
2 #include <string>
3 #include <vector>
4 
5 namespace horizon {
6 class BoardLayers {
7 public:
8  enum Layer {
9  TOP_NOTES = 200,
10  OUTLINE_NOTES = 110,
11  L_OUTLINE = 100,
12  TOP_COURTYARD = 60,
13  TOP_ASSEMBLY = 50,
14  TOP_PACKAGE = 40,
15  TOP_PASTE = 30,
16  TOP_SILKSCREEN = 20,
17  TOP_MASK = 10,
18  TOP_COPPER = 0,
19  IN1_COPPER = -1,
20  IN2_COPPER = -2,
21  IN3_COPPER = -3,
22  IN4_COPPER = -4,
23  BOTTOM_COPPER = -100,
24  BOTTOM_MASK = -110,
25  BOTTOM_SILKSCREEN = -120,
26  BOTTOM_PASTE = -130,
27  BOTTOM_PACKAGE = -140,
28  BOTTOM_ASSEMBLY = -150,
29  BOTTOM_COURTYARD = -160,
30  BOTTOM_NOTES = -200
31  };
32 
33  static bool is_copper(int l)
34  {
35  return l <= TOP_COPPER && l >= BOTTOM_COPPER;
36  }
37 
38  static bool is_silkscreen(int l)
39  {
40  return l == TOP_SILKSCREEN || l == BOTTOM_SILKSCREEN;
41  }
42 
43  static std::string get_layer_name(int l);
44  static const std::vector<int> &get_layers();
45 };
46 } // namespace horizon
horizon::BoardLayers
Definition: board_layers.hpp:6