aboutsummaryrefslogtreecommitdiff
path: root/demo/thirdparty/olinuxino/py/olinuxino.py
diff options
context:
space:
mode:
Diffstat (limited to 'demo/thirdparty/olinuxino/py/olinuxino.py')
-rw-r--r--demo/thirdparty/olinuxino/py/olinuxino.py35
1 files changed, 17 insertions, 18 deletions
diff --git a/demo/thirdparty/olinuxino/py/olinuxino.py b/demo/thirdparty/olinuxino/py/olinuxino.py
index 0b6fd1e..49b634f 100644
--- a/demo/thirdparty/olinuxino/py/olinuxino.py
+++ b/demo/thirdparty/olinuxino/py/olinuxino.py
@@ -3,9 +3,8 @@ import re
from ee import EeException, EeVal
from ee.kicad import Component
from ee.kicad.make_bom import MakeBomStrategy
-from ee.xml import types, bom_file_utils
-from ee.part import fact_keys
-from ee.xml.bom_file_utils import facts
+from ee.xml import types
+from ee.part import fact_keys, Part
c_value_re = re.compile("([0-9]+\\.?[0-9]*[mupn]F)/([0-9]+\\.?[0-9]*[k]?V)/([0-9]+)%(?:/([A-Z][0-9][A-Z]))?")
r_value_re = re.compile(r"([^/]+)(?:/([^/]+)(?:/([^/]+))?)?")
@@ -14,14 +13,14 @@ r_value_re = re.compile(r"([^/]+)(?:/([^/]+)(?:/([^/]+))?)?")
class OlinuxinoMakeBomStrategy(MakeBomStrategy):
@staticmethod
- def set_default(fs, fact_key: str, value):
- fact = bom_file_utils.find_fact(fs, fact_key)
+ def set_default(part: Part, fact_key: str, value):
+ fact = part.find_fact(fact_key)
if fact:
return
- fs.add_fact(types.Fact(key=fact_key, value=value))
+ part.get_facts().append(types.Fact(key=fact_key, value=value))
- def process_part(self, component: Component, part: types.Part):
+ def process_part(self, component: Component, part: Part):
debug = False
print(component.ref)
@@ -35,7 +34,7 @@ class OlinuxinoMakeBomStrategy(MakeBomStrategy):
s = component.footprint.split(":")
fp_lib, fp_part = s[0], s[1]
- fs = facts(part, create=True)
+ fs = part.get_facts()
na = v.startswith("NA(") and v.endswith(")") or v == "NA"
if na:
@@ -63,11 +62,11 @@ class OlinuxinoMakeBomStrategy(MakeBomStrategy):
if na:
print(" NA".format())
- fs.add_fact(types.Fact(key=fact_keys.capacitance, value=capacitance))
- fs.add_fact(types.Fact(key=fact_keys.max_voltage, value=voltage))
- fs.add_fact(types.Fact(key=fact_keys.value_tolerance, value=tolerance))
+ fs.append(types.Fact(key=fact_keys.capacitance, value=capacitance))
+ fs.append(types.Fact(key=fact_keys.max_voltage, value=voltage))
+ fs.append(types.Fact(key=fact_keys.value_tolerance, value=tolerance))
if rs_198_class_2:
- fs.add_fact(types.Fact(key=fact_keys.rs_198_class_2, value=rs_198_class_2))
+ fs.append(types.Fact(key=fact_keys.rs_198_class_2, value=rs_198_class_2))
elif component.ref_type == "R":
# NA
@@ -89,18 +88,18 @@ class OlinuxinoMakeBomStrategy(MakeBomStrategy):
resistance = str(EeVal.parse(resistance))
- fs.add_fact(types.Fact(key=fact_keys.resistance, value=resistance))
+ fs.append(types.Fact(key=fact_keys.resistance, value=resistance))
if tolerance:
- fs.add_fact(types.Fact(key=fact_keys.value_tolerance, value=tolerance))
+ fs.append(types.Fact(key=fact_keys.value_tolerance, value=tolerance))
if size:
- fs.add_fact(types.Fact(key=fact_keys.imperial_footprint_size, value=size))
+ fs.append(types.Fact(key=fact_keys.imperial_footprint_size, value=size))
- self.set_default(fs, fact_keys.value_tolerance, "10%")
+ self.set_default(part, fact_keys.value_tolerance, "10%")
else:
- fs.add_fact(types.Fact(key=fact_keys.value, value=v))
+ fs.append(types.Fact(key=fact_keys.value, value=v))
if na:
- fs.add_fact(types.Fact(key=fact_keys.place_part, value="no"))
+ fs.append(types.Fact(key=fact_keys.place_part, value="no"))
# raise EeException("Unknown component kind: ref={}, ref type:{}, value={}, fp_lib={}, fp_part={}".
# format(component.ref, component.ref_type, v, fp_lib, fp_part))