Skip to content

Commit c0b3a36

Browse files
authored
Merge pull request #138 from LibrePCB/add-sod-packages
Add generator for SOD123, SOD323, SOD523 packages
2 parents 2ffeefe + b848ae7 commit c0b3a36

File tree

3 files changed

+562
-0
lines changed

3 files changed

+562
-0
lines changed

entities/package.py

+15
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,16 @@ def __lt__(self, other): # type: ignore
4747
return self.uuid < other.uuid
4848

4949

50+
class AlternativeName():
51+
def __init__(self, name: str, reference: str):
52+
self.name = name
53+
self.reference = reference
54+
55+
def __str__(self) -> str:
56+
return '(alternative_name "{}" (reference "{}"))'.format(
57+
self.name, self.reference)
58+
59+
5060
class AssemblyType(EnumValue):
5161
NONE = 'none'
5262
THT = 'tht'
@@ -305,12 +315,16 @@ def __init__(self, uuid: str, name: Name, description: Description,
305315
self.deprecated = deprecated
306316
self.generated_by = generated_by
307317
self.categories = categories
318+
self.alternative_names: List[AlternativeName] = []
308319
self.assembly_type = assembly_type
309320
self.pads: List[PackagePad] = []
310321
self.models_3d: List[Package3DModel] = []
311322
self.footprints: List[Footprint] = []
312323
self.approvals: List[str] = []
313324

325+
def add_alternative_name(self, alternative_name: AlternativeName) -> None:
326+
self.alternative_names.append(alternative_name)
327+
314328
def add_pad(self, pad: PackagePad) -> None:
315329
self.pads.append(pad)
316330

@@ -334,6 +348,7 @@ def __str__(self) -> str:
334348
' {}\n'.format(self.deprecated) +\
335349
' {}\n'.format(self.generated_by) +\
336350
''.join([' {}\n'.format(cat) for cat in self.categories]) +\
351+
''.join([' {}\n'.format(alt) for alt in self.alternative_names]) +\
337352
' {}\n'.format(self.assembly_type)
338353
ret += indent_entities(self.pads)
339354
ret += indent_entities(self.models_3d)

0 commit comments

Comments
 (0)