Simplify __init__ functions, Pt. I
This commit is contained in:
parent
07567be3ca
commit
ab922928de
@ -3,7 +3,6 @@ nodes:
|
||||
type: D-Sub
|
||||
gender: female
|
||||
pinout: [DCD, RX, TX, DTR, GND, DSR, RTS, CTS, RI]
|
||||
random: yes
|
||||
X2:
|
||||
type: Molex KK 254
|
||||
gender: female
|
||||
|
||||
@ -57,11 +57,11 @@ class Harness:
|
||||
self.nodes = {}
|
||||
self.cables = {}
|
||||
|
||||
def add_node(self, name, type=None, gender=None, show_name=True, num_pins=None, show_num_pins=True, pinout=None, ports_left=False, ports_right=False):
|
||||
self.nodes[name] = Node(name, type, gender, show_name, num_pins, show_num_pins, pinout, ports_left, ports_right)
|
||||
def add_node(self, name, *args, **kwargs):
|
||||
self.nodes[name] = Node(name, *args, **kwargs)
|
||||
|
||||
def add_cable(self, name, mm2=None, awg=None, show_equiv=False, length=0, show_name=False, show_pinout=False, num_wires=None, show_num_wires=True, colors=None, color_code=None, shield=False):
|
||||
self.cables[name] = Cable(name, mm2, awg, show_equiv, length, show_name, show_pinout, num_wires, show_num_wires, colors, color_code, shield)
|
||||
def add_cable(self, name, *args, **kwargs):
|
||||
self.cables[name] = Cable(name, *args, **kwargs)
|
||||
|
||||
def loop(self, node_name, from_pin, to_pin):
|
||||
self.nodes[node_name].loop(from_pin, to_pin)
|
||||
@ -177,14 +177,22 @@ class Harness:
|
||||
|
||||
class Node:
|
||||
|
||||
def __init__(self, name, type=None, gender=None, show_name=True, num_pins=None, show_num_pins=True, pinout=None, ports_left=False, ports_right=False):
|
||||
def __init__(self, name,
|
||||
type=None,
|
||||
gender=None,
|
||||
show_name=True,
|
||||
num_pins=True,
|
||||
show_num_pins=None,
|
||||
pinout=None):
|
||||
self.name = name
|
||||
self.type = type
|
||||
self.gender = gender
|
||||
self.show_name = show_name
|
||||
self.show_num_pins = show_num_pins
|
||||
self.ports_left = ports_left
|
||||
self.ports_right = ports_right
|
||||
# self.pinout = []
|
||||
|
||||
self.ports_left = False
|
||||
self.ports_right = False
|
||||
self.loops = []
|
||||
|
||||
if pinout is None:
|
||||
@ -193,17 +201,27 @@ class Node:
|
||||
self.pinout = ('',) * num_pins
|
||||
else:
|
||||
if num_pins is None:
|
||||
if pinout is None:
|
||||
raise Exception('Must provide num_pins or pinout')
|
||||
else:
|
||||
self.pinout = pinout
|
||||
raise Exception('Must provide num_pins or pinout')
|
||||
else:
|
||||
self.pinout = pinout
|
||||
|
||||
def loop(self, from_pin, to_pin):
|
||||
self.loops.append((from_pin, to_pin))
|
||||
|
||||
class Cable:
|
||||
|
||||
def __init__(self, name, mm2=None, awg=None, show_equiv=False, length=0, show_name=False, show_pinout=False, num_wires=None, show_num_wires=True, colors=None, color_code=None, shield=False):
|
||||
def __init__(self, name,
|
||||
mm2=None,
|
||||
awg=None,
|
||||
show_equiv=False,
|
||||
length=0,
|
||||
show_name=False,
|
||||
show_pinout=False,
|
||||
num_wires=None,
|
||||
show_num_wires=True,
|
||||
colors=None,
|
||||
color_code=None,
|
||||
shield=False ):
|
||||
self.name = name
|
||||
if mm2 is not None and awg is not None:
|
||||
raise Exception('You cannot define both mm2 and awg!')
|
||||
|
||||
@ -1,6 +1,8 @@
|
||||
import yaml
|
||||
import wireviz
|
||||
|
||||
filename = '../examples/example1.yml'
|
||||
filename = '../examples/example2.yml'
|
||||
filename = '../examples/ferrules.yml'
|
||||
|
||||
def check_designators(what, where):
|
||||
@ -49,10 +51,7 @@ h = wireviz.Harness()
|
||||
if 'nodes' in input and type(input['nodes']) == dict:
|
||||
if len(input['nodes']) > 0:
|
||||
for k, o in input['nodes'].items():
|
||||
h.add_node(k, type=o.get('type'),
|
||||
gender=o.get('gender'),
|
||||
num_pins=o.get('num_pins'),
|
||||
pinout=o.get('pinout'))
|
||||
h.add_node(name=k, **o)
|
||||
else:
|
||||
print('Node list empty')
|
||||
else:
|
||||
@ -63,19 +62,22 @@ else:
|
||||
if 'wires' in input and type(input['wires']) == dict:
|
||||
if len(input['wires']) > 0:
|
||||
for k, o in input['wires'].items():
|
||||
h.add_cable(k, mm2=o.get('mm2'),
|
||||
awg=o.get('awg'),
|
||||
length=o.get('length'),
|
||||
num_wires=o.get('num_wires'),
|
||||
colors=o.get('colors'),
|
||||
color_code=o.get('color_code'),
|
||||
shield=o.get('shield'))
|
||||
h.add_cable(name=k, **o)
|
||||
else:
|
||||
print('Wire list empty')
|
||||
else:
|
||||
print('No wire list found')
|
||||
input['wires'] = {}
|
||||
|
||||
if 'ferrules' in input and type(input['ferrules']) == dict:
|
||||
if len(input['wires']) > 0:
|
||||
pass
|
||||
else:
|
||||
print('Ferrule list empty')
|
||||
else:
|
||||
print('No ferrule list found')
|
||||
input['ferrules'] = {}
|
||||
|
||||
# add connections
|
||||
if 'connections' in input:
|
||||
if len(input['connections']) > 0:
|
||||
@ -129,6 +131,7 @@ if 'connections' in input:
|
||||
w_n = check_designators([from_name, to_name],('wires','nodes'))
|
||||
n_n = check_designators([from_name, to_name],('nodes','nodes'))
|
||||
|
||||
|
||||
f_w = check_designators([from_name, to_name],('ferrules','wires'))
|
||||
w_f = check_designators([from_name, to_name],('wires','ferrules'))
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user