Repository navigation
Expand file tree
/
Copy pathcommand_converter.py
More file actions
177 lines (119 loc) · 4.33 KB
/
Copy pathcommand_converter.py
File metadata and controls
177 lines (119 loc) · 4.33 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
from primitive_shape import Shape
from raw_command import *
T = TypeVar('T')
class CommandVisitor:
@abstractmethod
def visit_g04(self, command: 'G04Command') -> T: pass
@abstractmethod
def visit_mo(self, command: 'MOCommand') -> T: pass
@abstractmethod
def visit_fs(self, command: 'FSCommand') -> T: pass
@abstractmethod
def visit_ad(self, command: 'ADCommand') -> T: pass
@abstractmethod
def visit_am(self, command: 'AMCommand') -> T: pass
@abstractmethod
def visit_dnn(self, command: 'DnnCommand') -> T: pass
@abstractmethod
def visit_d01(self, command: 'D01Command') -> T: pass
@abstractmethod
def visit_d02(self, command: 'D02Command') -> T: pass
@abstractmethod
def visit_d03(self, command: 'D03Command') -> T: pass
@abstractmethod
def visit_g01(self, command: 'G01Command') -> T: pass
@abstractmethod
def visit_g02(self, command: 'G02Command') -> T: pass
@abstractmethod
def visit_g03(self, command: 'G03Command') -> T: pass
@abstractmethod
def visit_g75(self, command: 'G75Command') -> T: pass
@abstractmethod
def visit_lp(self, command: 'LPCommand') -> T: pass
@abstractmethod
def visit_lm(self, command: 'LMCommand') -> T: pass
@abstractmethod
def visit_lr(self, command: 'LRCommand') -> T: pass
@abstractmethod
def visit_ls(self, command: 'LSCommand') -> T: pass
@abstractmethod
def visit_g36(self, command: 'G36Command') -> T: pass
@abstractmethod
def visit_g37(self, command: 'G37Command') -> T: pass
@abstractmethod
def visit_ab(self, command: 'ABCommand') -> T: pass
@abstractmethod
def visit_sr(self, command: 'SRCommand') -> T: pass
@abstractmethod
def visit_tf(self, command: 'TFCommand') -> T: pass
@abstractmethod
def visit_ta(self, command: 'TACommand') -> T: pass
@abstractmethod
def visit_to(self, command: 'TOCommand') -> T: pass
@abstractmethod
def visit_td(self, command: 'TDCommand') -> T: pass
@abstractmethod
def visit_m02(self, command: 'M02Command') -> T: pass
@abstractmethod
def visit_g74(self, command: 'G74Command') -> T:
pass
@attr.s
class CommandConverter(CommandVisitor):
metric: 'Metric' = attr.ib()
aperture_dictionary: dict[int, 'ADCommand'] = attr.ib(validator=attr.validators.instance_of(dict[int, 'ADCommand']))
aperture_macro_definition: dict[str, 'AMCommand'] = attr.ib(
validator=attr.validators.instance_of(dict[int, 'AMCommand']))
def visit_g04(self, command: 'G04Command') -> Shape:
pass
def visit_mo(self, command: 'MOCommand') -> Shape:
pass
def visit_fs(self, command: 'FSCommand') -> Shape:
pass
def visit_ad(self, command: 'ADCommand') -> Shape:
pass
def visit_am(self, command: 'AMCommand') -> Shape:
pass
def visit_dnn(self, command: 'DnnCommand') -> Shape:
pass
def visit_d01(self, command: 'D01Command') -> Shape:
pass
def visit_d02(self, command: 'D02Command') -> Shape:
pass
def visit_d03(self, command: 'D03Command') -> Shape:
pass
def visit_g01(self, command: 'G01Command') -> Shape:
pass
def visit_g02(self, command: 'G02Command') -> Shape:
pass
def visit_g03(self, command: 'G03Command') -> Shape:
pass
def visit_g75(self, command: 'G75Command') -> Shape:
pass
def visit_lp(self, command: 'LPCommand') -> Shape:
pass
def visit_lm(self, command: 'LMCommand') -> Shape:
pass
def visit_lr(self, command: 'LRCommand') -> Shape:
pass
def visit_ls(self, command: 'LSCommand') -> Shape:
pass
def visit_g36(self, command: 'G36Command') -> Shape:
pass
def visit_g37(self, command: 'G37Command') -> Shape:
pass
def visit_ab(self, command: 'ABCommand') -> Shape:
pass
def visit_sr(self, command: 'SRCommand') -> Shape:
pass
def visit_tf(self, command: 'TFCommand') -> Shape:
pass
def visit_ta(self, command: 'TACommand') -> Shape:
pass
def visit_to(self, command: 'TOCommand') -> Shape:
pass
def visit_td(self, command: 'TDCommand') -> Shape:
pass
def visit_m02(self, command: 'M02Command') -> Shape:
pass
def visit_g74(self, command: 'G74Command') -> T:
pass