Skip to content

Commit 54879c8

Browse files
committed
wip
1 parent c88daa4 commit 54879c8

File tree

10 files changed

+20
-13
lines changed

10 files changed

+20
-13
lines changed

edg/jlcparts/JlcPartsBjt.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
from .JlcPartsBase import JlcPartsBase, JlcPartsAttributes
55

66

7-
class JlcPartsBjt(TableBjt, PartsTableSelectorFootprint, JlcPartsBase):
7+
class JlcPartsBjt(PartsTableSelectorFootprint, JlcPartsBase, TableBjt):
88
_JLC_PARTS_FILE_NAMES = ["TransistorsBipolar_Transistors___BJT"]
99
_CHANNEL_MAP = {
1010
'NPN': 'NPN',

edg/jlcparts/JlcPartsDiode.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
from .JlcPartsBase import JlcPartsBase, JlcPartsAttributes
55

66

7-
class JlcPartsDiode(TableDiode, PartsTableSelectorFootprint, JlcPartsBase):
7+
class JlcPartsDiode(PartsTableSelectorFootprint, JlcPartsBase, TableDiode):
88
_JLC_PARTS_FILE_NAMES = [
99
"DiodesSchottky_Barrier_Diodes__SBD_",
1010
"DiodesDiodes___Fast_Recovery_Rectifiers",

edg/jlcparts/JlcPartsElectrolyticCapacitor.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
from .JlcPartsBase import JlcPartsBase, JlcPartsAttributes
55

66

7-
class JlcPartsElectrolyticCapacitor(TableCapacitor, AluminumCapacitor, PartsTableSelectorFootprint, JlcPartsBase):
7+
class JlcPartsElectrolyticCapacitor(PartsTableSelectorFootprint, JlcPartsBase, TableCapacitor, AluminumCapacitor):
88
_JLC_PARTS_FILE_NAMES = ["CapacitorsAluminum_Electrolytic_Capacitors___SMD"]
99
_PACKAGE_PARSER = re.compile(r"^SMD,D([\d.]+)xL([\d.]+)mm$")
1010

edg/jlcparts/JlcPartsFerriteBead.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
from .JlcPartsBase import JlcPartsBase, JlcPartsAttributes
55

66

7-
class JlcPartsFerriteBead(TableFerriteBead, PartsTableSelectorFootprint, JlcPartsBase):
7+
class JlcPartsFerriteBead(PartsTableSelectorFootprint, JlcPartsBase, TableFerriteBead):
88
_JLC_PARTS_FILE_NAMES = ["FiltersakaEMI_OptimizationFerrite_Beads"]
99

1010
@classmethod

edg/jlcparts/JlcPartsFet.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,11 +53,11 @@ def _entry_to_table_row(cls, row_dict: Dict[PartsTableColumn, Any], filename: st
5353
return None
5454

5555

56-
class JlcPartsFet(TableFet, PartsTableSelectorFootprint, JlcPartsBaseFet):
56+
class JlcPartsFet(PartsTableSelectorFootprint, JlcPartsBaseFet, TableFet):
5757
pass
5858

5959

60-
class JlcPartsSwitchFet(TableSwitchFet, PartsTableSelectorFootprint, JlcPartsBaseFet):
60+
class JlcPartsSwitchFet(PartsTableSelectorFootprint, JlcPartsBaseFet, TableSwitchFet):
6161
@init_in_parent
6262
def __init__(self, *args, manual_gate_charge: RangeLike = RangeExpr.ZERO, **kwargs):
6363
super().__init__(*args, **kwargs)

edg/jlcparts/JlcPartsLed.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
from .JlcPartsBase import JlcPartsBase, JlcPartsAttributes
55

66

7-
class JlcPartsLed(TableLed, PartsTableSelectorFootprint, JlcPartsBase):
7+
class JlcPartsLed(PartsTableSelectorFootprint, JlcPartsBase, TableLed):
88
_JLC_PARTS_FILE_NAMES = [
99
"OptoelectronicsLight_Emitting_Diodes__LED_",
1010
"OptoelectronicsLED_Indication___Discrete",

edg/jlcparts/JlcPartsMlcc.py

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
from .JlcPartsBase import JlcPartsBase, JlcPartsAttributes
55

66

7-
class JlcPartsMlcc(TableDeratingCapacitor, CeramicCapacitor, PartsTableSelectorFootprint, JlcPartsBase):
7+
class JlcPartsMlcc(PartsTableSelectorFootprint, JlcPartsBase, TableDeratingCapacitor, CeramicCapacitor):
88
_JLC_PARTS_FILE_NAMES = ["CapacitorsMultilayer_Ceramic_Capacitors_MLCC___SMDakaSMT"]
99

1010
@init_in_parent
@@ -63,6 +63,15 @@ def filter_minimum_size(row: PartsTableRow) -> Optional[Dict[PartsTableColumn, A
6363
def _row_sort_by(cls, row: PartsTableRow) -> Any:
6464
return [row[cls.PARALLEL_COUNT], super(JlcPartsMlcc, cls)._row_sort_by(row)]
6565

66+
def _row_generate(self, row: PartsTableRow) -> None:
67+
# see comment in TableCapacitor._row_generate for why this needs to be here
68+
if row[self.PARALLEL_COUNT] == 1:
69+
super()._row_generate(row) # creates the footprint
70+
else:
71+
TableCapacitor._row_generate(self, row) # skips creating the footprint in PartsTableSelectorFootprint
72+
self.assign(self.actual_basic_part, True) # dummy value
73+
self._make_parallel_footprints(row)
74+
6675
def _make_parallel_footprints(self, row: PartsTableRow) -> None:
6776
cap_model = JlcDummyCapacitor(set_lcsc_part=row[self.LCSC_COL],
6877
set_basic_part=row[self.BASIC_PART_COL],
@@ -77,8 +86,5 @@ def _make_parallel_footprints(self, row: PartsTableRow) -> None:
7786
self.connect(self.c[i].pos, self.pos)
7887
self.connect(self.c[i].neg, self.neg)
7988

80-
self.assign(self.lcsc_part, row[self.LCSC_COL])
81-
self.assign(self.actual_basic_part, row[self.BASIC_PART_COL])
82-
8389

8490
lambda: JlcPartsMlcc() # ensure class is instantiable (non-abstract)

edg/jlcparts/JlcPartsPptcFuse.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
from .JlcPartsBase import JlcPartsBase, JlcPartsAttributes
55

66

7-
class JlcPartsPptcFuse(TableFuse, PptcFuse, PartsTableSelectorFootprint, JlcPartsBase):
7+
class JlcPartsPptcFuse(PartsTableSelectorFootprint, JlcPartsBase, TableFuse, PptcFuse):
88
_JLC_PARTS_FILE_NAMES = ["Circuit_ProtectionResettable_Fuses"]
99

1010
@classmethod

edg/jlcparts/JlcPartsResistorSmd.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
from .JlcPartsBase import JlcPartsBase, JlcPartsAttributes
55

66

7-
class JlcPartsResistorSmd(TableResistor, PartsTableSelectorFootprint, JlcPartsBase):
7+
class JlcPartsResistorSmd(PartsTableSelectorFootprint, JlcPartsBase, TableResistor):
88
_JLC_PARTS_FILE_NAMES = ["ResistorsChip_Resistor___Surface_Mount"]
99

1010
@classmethod

edg/parts/JlcCapacitor.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -105,6 +105,7 @@ def _row_sort_by(cls, row: PartsTableRow) -> Any:
105105
return [row[cls.PARALLEL_COUNT], super(JlcCapacitor, cls)._row_sort_by(row)]
106106

107107
def _row_generate(self, row: PartsTableRow) -> None:
108+
# see comment in TableCapacitor._row_generate for why this needs to be here
108109
if row[self.PARALLEL_COUNT] == 1:
109110
super()._row_generate(row) # creates the footprint
110111
else:

0 commit comments

Comments
 (0)