diff options
-rw-r--r-- | library/deviceModelLibrary/Diode/RF Diode/DRN142S.lib (renamed from library/deviceModelLibrary/Diode/DRN142S.lib) | 0 | ||||
-rw-r--r-- | library/deviceModelLibrary/Diode/RF Diode/DRN142S.xml (renamed from library/deviceModelLibrary/Diode/DRN142S.xml) | 0 | ||||
-rw-r--r-- | library/deviceModelLibrary/LEDs/eSim_BlueLED.lib (renamed from library/deviceModelLibrary/User Libraries/eSim_BlueLED.lib) | 0 | ||||
-rw-r--r-- | library/deviceModelLibrary/LEDs/eSim_BlueLED.xml (renamed from library/deviceModelLibrary/User Libraries/eSim_BlueLED.xml) | 0 | ||||
-rw-r--r-- | library/deviceModelLibrary/LEDs/eSim_RedLED.lib (renamed from library/deviceModelLibrary/User Libraries/eSim_RedLED.lib) | 0 | ||||
-rw-r--r-- | library/deviceModelLibrary/LEDs/eSim_RedLED.xml (renamed from library/deviceModelLibrary/User Libraries/eSim_RedLED.xml) | 0 | ||||
-rw-r--r-- | library/deviceModelLibrary/Switch/switch1.lib (renamed from library/deviceModelLibrary/User Libraries/switch1.lib) | 0 | ||||
-rw-r--r-- | library/deviceModelLibrary/Switch/switch1.xml (renamed from library/deviceModelLibrary/User Libraries/switch1.xml) | 0 | ||||
-rw-r--r-- | library/deviceModelLibrary/Transmission Lines/ymod.lib (renamed from library/deviceModelLibrary/User Libraries/ymod.lib) | 0 | ||||
-rw-r--r-- | library/deviceModelLibrary/Transmission Lines/ymod.xml (renamed from library/deviceModelLibrary/User Libraries/ymod.xml) | 0 | ||||
-rw-r--r-- | library/kicadLibrary/kicad_eSim-Library/eSim_Subckt.lib | 679 | ||||
-rw-r--r-- | src/kicadtoNgspice/DeviceModel.py | 431 |
12 files changed, 0 insertions, 1110 deletions
diff --git a/library/deviceModelLibrary/Diode/DRN142S.lib b/library/deviceModelLibrary/Diode/RF Diode/DRN142S.lib index 25e7b6b2..25e7b6b2 100644 --- a/library/deviceModelLibrary/Diode/DRN142S.lib +++ b/library/deviceModelLibrary/Diode/RF Diode/DRN142S.lib diff --git a/library/deviceModelLibrary/Diode/DRN142S.xml b/library/deviceModelLibrary/Diode/RF Diode/DRN142S.xml index 648e2440..648e2440 100644 --- a/library/deviceModelLibrary/Diode/DRN142S.xml +++ b/library/deviceModelLibrary/Diode/RF Diode/DRN142S.xml diff --git a/library/deviceModelLibrary/User Libraries/eSim_BlueLED.lib b/library/deviceModelLibrary/LEDs/eSim_BlueLED.lib index 66bee13b..66bee13b 100644 --- a/library/deviceModelLibrary/User Libraries/eSim_BlueLED.lib +++ b/library/deviceModelLibrary/LEDs/eSim_BlueLED.lib diff --git a/library/deviceModelLibrary/User Libraries/eSim_BlueLED.xml b/library/deviceModelLibrary/LEDs/eSim_BlueLED.xml index 65f54494..65f54494 100644 --- a/library/deviceModelLibrary/User Libraries/eSim_BlueLED.xml +++ b/library/deviceModelLibrary/LEDs/eSim_BlueLED.xml diff --git a/library/deviceModelLibrary/User Libraries/eSim_RedLED.lib b/library/deviceModelLibrary/LEDs/eSim_RedLED.lib index 1f852936..1f852936 100644 --- a/library/deviceModelLibrary/User Libraries/eSim_RedLED.lib +++ b/library/deviceModelLibrary/LEDs/eSim_RedLED.lib diff --git a/library/deviceModelLibrary/User Libraries/eSim_RedLED.xml b/library/deviceModelLibrary/LEDs/eSim_RedLED.xml index a8df3640..a8df3640 100644 --- a/library/deviceModelLibrary/User Libraries/eSim_RedLED.xml +++ b/library/deviceModelLibrary/LEDs/eSim_RedLED.xml diff --git a/library/deviceModelLibrary/User Libraries/switch1.lib b/library/deviceModelLibrary/Switch/switch1.lib index 3736c67f..3736c67f 100644 --- a/library/deviceModelLibrary/User Libraries/switch1.lib +++ b/library/deviceModelLibrary/Switch/switch1.lib diff --git a/library/deviceModelLibrary/User Libraries/switch1.xml b/library/deviceModelLibrary/Switch/switch1.xml index c38fe559..c38fe559 100644 --- a/library/deviceModelLibrary/User Libraries/switch1.xml +++ b/library/deviceModelLibrary/Switch/switch1.xml diff --git a/library/deviceModelLibrary/User Libraries/ymod.lib b/library/deviceModelLibrary/Transmission Lines/ymod.lib index 12ed776f..12ed776f 100644 --- a/library/deviceModelLibrary/User Libraries/ymod.lib +++ b/library/deviceModelLibrary/Transmission Lines/ymod.lib diff --git a/library/deviceModelLibrary/User Libraries/ymod.xml b/library/deviceModelLibrary/Transmission Lines/ymod.xml index 0c9a1863..0c9a1863 100644 --- a/library/deviceModelLibrary/User Libraries/ymod.xml +++ b/library/deviceModelLibrary/Transmission Lines/ymod.xml diff --git a/library/kicadLibrary/kicad_eSim-Library/eSim_Subckt.lib b/library/kicadLibrary/kicad_eSim-Library/eSim_Subckt.lib deleted file mode 100644 index ce0c8f05..00000000 --- a/library/kicadLibrary/kicad_eSim-Library/eSim_Subckt.lib +++ /dev/null @@ -1,679 +0,0 @@ -EESchema-LIBRARY Version 2.3 -#encoding utf-8 -# -# 10bitDAC -# -DEF 10bitDAC X 0 40 Y Y 1 F N -F0 "X" 0 50 60 H V C CNN -F1 "10bitDAC" -50 -50 60 H V C CNN -F2 "" 0 50 60 H I C CNN -F3 "" 0 50 60 H I C CNN -DRAW -S -500 500 400 -600 0 1 0 N -X D0 1 -700 -500 200 R 50 50 1 1 I -X D1 2 -700 -400 200 R 50 50 1 1 I -X D2 3 -700 -300 200 R 50 50 1 1 I -X D3 4 -700 -200 200 R 50 50 1 1 I -X D4 5 -700 -100 200 R 50 50 1 1 I -X D5 6 -700 0 200 R 50 50 1 1 I -X D6 7 -700 100 200 R 50 50 1 1 I -X D7 8 -700 200 200 R 50 50 1 1 I -X D8 9 -700 300 200 R 50 50 1 1 I -X D9 10 -700 400 200 R 50 50 1 1 I -X AnalogOut 11 600 350 200 L 50 50 1 1 O -ENDDRAW -ENDDEF -# -# Clock_pulse_generator -# -DEF Clock_pulse_generator X 0 40 Y Y 1 F N -F0 "X" 0 0 60 H V C CNN -F1 "Clock_pulse_generator" 0 -100 60 H V C CNN -F2 "" 0 0 60 H I C CNN -F3 "" 0 0 60 H I C CNN -DRAW -S -550 200 600 -300 0 1 0 N -X Vdd 1 -750 100 200 R 50 50 1 1 I -X R 2 -750 -50 200 R 50 50 1 1 I -X C 3 -750 -200 200 R 50 50 1 1 I -X Clkout 4 800 0 200 L 50 50 1 1 O -ENDDRAW -ENDDEF -# -# 2BITMUL -# -DEF 2BITMUL X 0 40 Y Y 1 F N -F0 "X" 0 0 60 H V C CNN -F1 "2BITMUL" 0 0 60 H V C CNN -F2 "" 0 0 60 H I C CNN -F3 "" 0 0 60 H I C CNN -DRAW -S -300 400 300 -400 0 1 0 N -X A0 1 -500 300 200 R 50 50 1 1 I -X A1 2 -500 150 200 R 50 50 1 1 I -X B0 3 -500 -50 200 R 50 50 1 1 I -X B1 4 -500 -250 200 R 50 50 1 1 I -X M0 5 500 250 200 L 50 50 1 1 O -X M1 6 500 100 200 L 50 50 1 1 O -X M2 7 500 -50 200 L 50 50 1 1 O -X M3 8 500 -250 200 L 50 50 1 1 O -ENDDRAW -ENDDEF -# -# 3_and -# -DEF 3_and X 0 40 Y Y 1 F N -F0 "X" 100 -50 60 H V C CNN -F1 "3_and" 150 150 60 H V C CNN -F2 "" 0 0 60 H V C CNN -F3 "" 0 0 60 H V C CNN -DRAW -A 150 50 158 716 -716 0 1 0 N 200 200 200 -100 -P 2 0 1 0 -150 200 200 200 N -P 3 0 1 0 -150 200 -150 -100 200 -100 N -X in1 1 -350 150 200 R 50 50 1 1 I -X in2 2 -350 50 200 R 50 50 1 1 I -X in3 3 -350 -50 200 R 50 50 1 1 I -X out 4 500 50 200 L 50 50 1 1 O -ENDDRAW -ENDDEF -# -# 4_OR -# -DEF 4_OR X 0 40 Y Y 1 F N -F0 "X" 150 -100 60 H V C CNN -F1 "4_OR" 150 100 60 H V C CNN -F2 "" 0 0 60 H V C CNN -F3 "" 0 0 60 H V C CNN -DRAW -A -800 0 650 226 -226 0 1 0 N -200 250 -200 -250 -A -73 134 444 -599 -176 0 1 0 N 150 -250 350 0 -A -30 -99 393 627 146 0 1 0 N 150 250 350 0 -P 2 0 1 0 -200 -250 150 -250 N -P 2 0 1 0 -200 250 150 250 N -X in1 1 -350 150 200 R 50 50 1 1 I -X in2 2 -350 50 200 R 50 50 1 1 I -X in3 3 -350 -50 200 R 50 50 1 1 I -X in4 4 -350 -150 200 R 50 50 1 1 I -X out 5 550 0 200 L 50 50 1 1 O -ENDDRAW -ENDDEF -# -# 4_and -# -DEF 4_and X 0 40 Y Y 1 F N -F0 "X" 50 -50 60 H V C CNN -F1 "4_and" 100 100 60 H V C CNN -F2 "" 0 0 60 H V C CNN -F3 "" 0 0 60 H V C CNN -DRAW -A 100 0 206 760 -760 0 1 0 N 150 200 150 -200 -P 2 0 1 0 -200 200 150 200 N -P 4 0 1 0 -200 200 -200 -200 50 -200 150 -200 N -X in1 1 -400 150 200 R 50 50 1 1 I -X in2 2 -400 50 200 R 50 50 1 1 I -X in3 3 -400 -50 200 R 50 50 1 1 I -X in4 4 -400 -150 200 R 50 50 1 1 I -X out 5 500 0 200 L 50 50 1 1 O -ENDDRAW -ENDDEF -# -# 556 -# -DEF 556 X 0 40 Y Y 1 F N -F0 "X" 0 0 60 H V C CNN -F1 "556" 0 0 60 H V C CNN -F2 "" 0 0 60 H V C CNN -F3 "" 0 0 60 H V C CNN -DRAW -S -300 400 250 -550 0 1 0 N -X dis1 1 -500 150 200 R 50 50 1 1 I -X thr1 2 -500 -150 200 R 50 50 1 1 I -X cv1 3 -150 -750 200 U 50 50 1 1 I -X rst1 4 -200 600 200 D 50 50 1 1 I -X out1 5 -500 0 200 R 50 50 1 1 O -X trig1 6 -500 -300 200 R 50 50 1 1 I -X gnd 7 0 -750 200 U 50 50 1 1 I -X trig2 8 450 -300 200 L 50 50 1 1 I -X out2 9 450 0 200 L 50 50 1 1 O -X rst2 10 100 600 200 D 50 50 1 1 I -X cv2 11 150 -750 200 U 50 50 1 1 I -X thr2 12 450 -150 200 L 50 50 1 1 I -X dis2 13 450 150 200 L 50 50 1 1 I -X vcc 14 -50 600 200 D 50 50 1 1 I -ENDDRAW -ENDDEF -# -# 5_and -# -DEF 5_and X 0 40 Y Y 1 F N -F0 "X" 50 -100 60 H V C CNN -F1 "5_and" 100 150 60 H V C CNN -F2 "" 0 0 60 H V C CNN -F3 "" 0 0 60 H V C CNN -DRAW -A 100 0 255 787 -787 0 1 0 N 150 250 150 -250 -P 2 0 1 0 -250 250 150 250 N -P 3 0 1 0 -250 250 -250 -250 150 -250 N -X in1 1 -450 200 200 R 50 50 1 1 I -X in2 2 -450 100 200 R 50 50 1 1 I -X in3 3 -450 0 200 R 50 50 1 1 I -X in4 4 -450 -100 200 R 50 50 1 1 I -X in5 5 -450 -200 200 R 50 50 1 1 I -X out 6 550 0 200 L 50 50 1 1 O -ENDDRAW -ENDDEF -# -# IC_4002 -# -DEF IC_4002 X 0 40 Y Y 1 F N -F0 "X" 0 150 60 H V C CNN -F1 "IC_4002" 0 0 60 H V C CNN -F2 "" 50 -150 60 H V C CNN -F3 "" 50 -150 60 H V C CNN -DRAW -S -250 350 250 -400 0 1 0 N -X 1Y 1 -450 250 200 R 50 50 1 1 O -X 1A 2 -450 150 200 R 50 50 1 1 I -X 1B 3 -450 50 200 R 50 50 1 1 I -X 1C 4 -450 -50 200 R 50 50 1 1 I -X 1D 5 -450 -150 200 R 50 50 1 1 I -X NC 6 -450 -250 200 R 50 50 1 1 I -X GND 7 -450 -350 200 R 50 50 1 1 I -X NC 8 450 -350 200 L 50 50 1 1 I -X 2A 9 450 -250 200 L 50 50 1 1 I -X 2B 10 450 -150 200 L 50 50 1 1 I -X 2C 11 450 -50 200 L 50 50 1 1 I -X 2D 12 450 50 200 L 50 50 1 1 I -X 2Y 13 450 150 200 L 50 50 1 1 O -X VCC 14 450 250 200 L 50 50 1 1 I -ENDDRAW -ENDDEF -# -# CMOS_NAND -# -DEF CMOS_NAND X 0 40 Y Y 1 F N -F0 "X" -100 -150 60 H V C CNN -F1 "CMOS_NAND" 0 -50 60 H V C CNN -F2 "" 0 0 60 H I C CNN -F3 "" 0 0 60 H I C CNN -DRAW -A 150 -50 381 668 -668 0 1 0 N 300 300 300 -400 -C 550 0 50 0 1 0 N -P 2 0 1 0 -350 300 300 300 N -P 3 0 1 0 -350 300 -350 -400 300 -400 N -X in1 1 -550 250 200 R 50 50 1 1 I -X in2 2 -550 -300 200 R 50 50 1 1 I -X out 3 800 0 279 L 79 79 1 1 I -ENDDRAW -ENDDEF -# -# IC_4012 -# -DEF IC_4012 X 0 40 Y Y 1 F N -F0 "X" 0 0 60 H V C CNN -F1 "IC_4012" 0 200 60 H V C CNN -F2 "" 0 0 60 H V C CNN -F3 "" 0 0 60 H V C CNN -DRAW -S -300 400 350 -400 0 1 0 N -X Q1 1 -500 300 200 R 50 50 1 1 O -X A1 2 -500 200 200 R 50 50 1 1 I -X B1 3 -500 100 200 R 50 50 1 1 I -X C1 4 -500 0 200 R 50 50 1 1 I -X D1 5 -500 -100 200 R 50 50 1 1 I -X NC 6 -500 -200 200 R 50 50 1 1 N -X VSS 7 -500 -300 200 R 50 50 1 1 I -X NC 8 550 -300 200 L 50 50 1 1 N -X A2 9 550 -200 200 L 50 50 1 1 I -X B2 10 550 -100 200 L 50 50 1 1 I -X C2 11 550 0 200 L 50 50 1 1 I -X D2 12 550 100 200 L 50 50 1 1 I -X Q2 13 550 200 200 L 50 50 1 1 O -X VDD 14 550 300 200 L 50 50 1 1 I -ENDDRAW -ENDDEF -# -# IC_4017 -# -DEF IC_4017 X 0 40 Y Y 1 F N -F0 "X" 0 0 60 H V C CNN -F1 "IC_4017" 0 0 60 H V C CNN -F2 "" 0 0 60 H V C CNN -F3 "" 0 0 60 H V C CNN -DRAW -S -350 850 400 -850 0 1 0 N -X 1 1 600 650 200 L 50 50 1 1 O -X 2 2 600 500 200 L 50 50 1 1 O -X 3 3 600 350 200 L 50 50 1 1 O -X 4 4 600 200 200 L 50 50 1 1 O -X 5 5 600 50 200 L 50 50 1 1 O -X 6 6 600 -100 200 L 50 50 1 1 O -X 7 7 600 -250 200 L 50 50 1 1 O -X 8 8 600 -400 200 L 50 50 1 1 O -X 9 9 600 -600 200 L 50 50 1 1 O -X 10 10 600 -750 200 L 50 50 1 1 O -X RST 11 -550 -400 200 R 50 50 1 1 I -X CLK 12 -550 350 200 R 50 50 1 1 I -ENDDRAW -ENDDEF -# -# eSim_74LS04 -# -DEF eSim_74LS04 X 0 40 Y Y 1 F N -F0 "X" 0 100 60 H V C CNN -F1 "eSim_74LS04" 0 0 60 H V C CNN -F2 "" 0 0 60 H I C CNN -F3 "" 0 0 60 H I C CNN -DRAW -S 350 500 -350 -500 0 1 0 N -X ~ 1 -550 450 200 R 50 50 1 1 P -X ~ 2 -550 300 200 R 50 50 1 1 P I -X ~ 3 -550 150 200 R 50 50 1 1 P -X ~ 4 -550 0 200 R 50 50 1 1 P I -X ~ 5 -550 -150 200 R 50 50 1 1 P -X ~ 6 -550 -300 200 R 50 50 1 1 P I -X GND 7 -550 -450 200 R 50 50 1 1 P -X ~ 8 550 -450 200 L 50 50 1 1 P I -X ~ 9 550 -300 200 L 50 50 1 1 P -X ~ 10 550 -150 200 L 50 50 1 1 P I -X ~ 11 550 0 200 L 50 50 1 1 P -X ~ 12 550 150 200 L 50 50 1 1 P I -X ~ 13 550 300 200 L 50 50 1 1 P -X VCC 14 550 450 200 L 50 50 1 1 P -ENDDRAW -ENDDEF -# -# IC_4023 -# -DEF IC_4023 X 0 40 Y Y 1 F N -F0 "X" 0 -100 60 H V C CNN -F1 "IC_4023" 0 100 60 H V C CNN -F2 "" 0 0 60 H V C CNN -F3 "" 0 0 60 H V C CNN -DRAW -S -300 450 300 -450 0 1 0 N -X A1 1 -500 300 200 R 50 50 1 1 I -X B1 2 -500 200 200 R 50 50 1 1 I -X A2 3 -500 100 200 R 50 50 1 1 I -X B2 4 -500 0 200 R 50 50 1 1 I -X C2 5 -500 -100 200 R 50 50 1 1 I -X Q2 6 -500 -200 200 R 50 50 1 1 O -X Vss 7 -500 -300 200 R 50 50 1 1 I -X C1 8 500 -300 200 L 50 50 1 1 I -X Q1 9 500 -200 200 L 50 50 1 1 O -X Q3 10 500 -100 200 L 50 50 1 1 O -X C3 11 500 0 200 L 50 50 1 1 I -X B3 12 500 100 200 L 50 50 1 1 I -X A3 13 500 200 200 L 50 50 1 1 I -X Vdd 14 500 300 200 L 50 50 1 1 I -ENDDRAW -ENDDEF -# -# IC_4028 -# -DEF IC_4028 X 0 40 Y Y 1 F N -F0 "X" 0 -100 60 H V C CNN -F1 "IC_4028" 0 50 60 H V C CNN -F2 "" 0 0 60 H V C CNN -F3 "" 0 0 60 H V C CNN -DRAW -S -300 450 300 -450 0 1 0 N -X Q4 1 -500 350 200 R 50 50 1 1 O -X Q2 2 -500 250 200 R 50 50 1 1 O -X Q0 3 -500 150 200 R 50 50 1 1 O -X Q7 4 -500 50 200 R 50 50 1 1 O -X Q9 5 -500 -50 200 R 50 50 1 1 O -X Q5 6 -500 -150 200 R 50 50 1 1 O -X Q6 7 -500 -250 200 R 50 50 1 1 O -X Vss 8 -500 -350 200 R 50 50 1 1 I -X Q8 9 500 -350 200 L 50 50 1 1 O -X A0 10 500 -250 200 L 50 50 1 1 I -X A3 11 500 -150 200 L 50 50 1 1 I -X A2 12 500 -50 200 L 50 50 1 1 I -X A1 13 500 50 200 L 50 50 1 1 I -X Q1 14 500 150 200 L 50 50 1 1 O -X Q3 15 500 250 200 L 50 50 1 1 O -X Vdd 16 500 350 200 L 50 50 1 1 O -ENDDRAW -ENDDEF -# -# IC_4073 -# -DEF IC_4073 X 0 40 Y Y 1 F N -F0 "X" 0 -100 60 H V C CNN -F1 "IC_4073" 0 50 60 H V C CNN -F2 "" 0 0 60 H V C CNN -F3 "" 0 0 60 H V C CNN -DRAW -S -300 400 300 -400 0 1 0 N -X A1 1 -500 300 200 R 50 50 1 1 I -X B1 2 -500 200 200 R 50 50 1 1 I -X A2 3 -500 100 200 R 50 50 1 1 I -X B2 4 -500 0 200 R 50 50 1 1 I -X C2 5 -500 -100 200 R 50 50 1 1 I -X Q2 6 -500 -200 200 R 50 50 1 1 O -X Vss 7 -500 -300 200 R 50 50 1 1 I -X C1 8 500 -300 200 L 50 50 1 1 I -X Q1 9 500 -200 200 L 50 50 1 1 O -X Q3 10 500 -100 200 L 50 50 1 1 O -X A3 11 500 0 200 L 50 50 1 1 I -X B3 12 500 100 200 L 50 50 1 1 I -X C3 13 500 200 200 L 50 50 1 1 I -X Vdd 14 500 300 200 L 50 50 1 1 I -ENDDRAW -ENDDEF -# -# IC_74153 -# -DEF IC_74153 X 0 40 Y Y 1 F N -F0 "X" 100 50 60 H V C CNN -F1 "IC_74153" 100 150 60 H V C CNN -F2 "" 0 0 60 H V C CNN -F3 "" 0 0 60 H V C CNN -DRAW -T 0 100 -200 60 0 0 0 4:1 Normal 0 C C -T 0 100 -100 60 0 0 0 DUAL Normal 0 C C -T 0 100 -300 60 0 0 0 MUX Normal 0 C C -S -200 500 350 -550 0 1 0 N -X a0 1 -400 350 200 R 50 50 1 1 I -X a1 2 -400 250 200 R 50 50 1 1 I -X a2 3 -400 150 200 R 50 50 1 1 I -X a3 4 -400 50 200 R 50 50 1 1 I -X EA 5 0 700 200 D 50 50 1 1 I I -X b0 6 -400 -150 200 R 50 50 1 1 I -X b1 7 -400 -250 200 R 50 50 1 1 I -X b2 8 -400 -350 200 R 50 50 1 1 I -X b3 9 -400 -450 200 R 50 50 1 1 I -X EB 10 200 700 200 D 50 50 1 1 I I -X s1 11 50 -750 200 U 50 50 1 1 I -X s0 12 150 -750 200 U 50 50 1 1 I -X ya 13 550 250 200 L 50 50 1 1 O -X yb 14 550 -300 200 L 50 50 1 1 O -ENDDRAW -ENDDEF -# -# IC_74154 -# -DEF IC_74154 X 0 40 Y Y 1 F N -F0 "X" 0 -200 60 H V C CNN -F1 "IC_74154" 50 -50 60 H V C CNN -F2 "" 0 50 60 H V C CNN -F3 "" 0 50 60 H V C CNN -DRAW -T 0 0 400 60 0 0 0 4:16~ Normal 0 C C -T 0 0 250 60 0 0 0 decoder Normal 0 C C -S -350 700 400 -700 0 0 0 N -X ~Y0 1 -550 550 200 R 50 50 1 1 O I -X ~Y1 2 -550 450 200 R 50 50 1 1 O I -X ~Y2 3 -550 350 200 R 50 50 1 1 O I -X ~Y3 4 -550 250 200 R 50 50 1 1 O I -X ~Y4 5 -550 150 200 R 50 50 1 1 O I -X ~Y5 6 -550 50 200 R 50 50 1 1 O I -X ~Y6 7 -550 -50 200 R 50 50 1 1 O I -X ~Y7 8 -550 -150 200 R 50 50 1 1 O I -X ~Y8 9 -550 -250 200 R 50 50 1 1 O I -X ~Y9 10 -550 -350 200 R 50 50 1 1 O I -X A3 20 600 150 200 L 50 50 1 1 I -X ~Y10 11 -550 -450 200 R 50 50 1 1 O I -X A2 21 600 250 200 L 50 50 1 1 I -X GND 12 -550 -550 200 R 50 50 1 1 I -X A1 22 600 350 200 L 50 50 1 1 I -X ~Y11 13 600 -550 200 L 50 50 1 1 O I -X A0 23 600 450 200 L 50 50 1 1 I -X ~Y12 14 600 -450 200 L 50 50 1 1 O I -X Vcc 24 600 550 200 L 50 50 1 1 I -X ~Y13 15 600 -350 200 L 50 50 1 1 O I -X ~Y14 16 600 -250 200 L 50 50 1 1 O I -X ~Y15 17 600 -150 200 L 50 50 1 1 O I -X ~E0 18 600 -50 200 L 50 50 1 1 I I -X ~E1 19 600 50 200 L 50 50 1 1 I I -ENDDRAW -ENDDEF -# -# IC_74157 -# -DEF IC_74157 X 0 40 Y Y 1 F N -F0 "X" 50 -50 60 H V C CNN -F1 "IC_74157" 50 100 60 H V C CNN -F2 "" 0 0 60 H V C CNN -F3 "" 0 0 60 H V C CNN -DRAW -T 0 50 -300 60 0 0 0 2:1 Normal 0 C C -T 0 50 -400 60 0 0 0 MUX Normal 0 C C -T 0 50 -200 60 0 0 0 QUAD Normal 0 C C -S -350 550 400 -650 0 1 0 N -X a0 1 -550 450 200 R 50 50 1 1 I -X a1 2 -550 300 200 R 50 50 1 1 I -X b0 3 -550 200 200 R 50 50 1 1 I -X b1 4 -550 100 200 R 50 50 1 1 I -X c0 5 -550 0 200 R 50 50 1 1 I -X c1 6 -550 -100 200 R 50 50 1 1 I -X d0 7 -550 -200 200 R 50 50 1 1 I -X d1 8 -550 -300 200 R 50 50 1 1 I -X EN 9 -550 -550 200 R 50 50 1 1 I I -X S 10 -550 -450 200 R 50 50 1 1 I -X Yd 11 600 0 200 L 50 50 1 1 O -X Ya 12 600 300 200 L 50 50 1 1 O -X Yb 13 600 200 200 L 50 50 1 1 O -X Yc 14 600 100 200 L 50 50 1 1 O -ENDDRAW -ENDDEF -# -# IC_7485 -# -DEF IC_7485 X 0 40 Y Y 1 F N -F0 "X" -50 -100 60 H V C CNN -F1 "IC_7485" -50 50 60 H V C CNN -F2 "" 0 0 60 H V C CNN -F3 "" 0 0 60 H V C CNN -DRAW -T 0 0 550 60 0 0 0 4~BIT~comparator Normal 0 C C -S -350 450 400 -400 0 1 0 N -X A<B(in) 1 600 -100 200 L 50 50 1 1 I -X A=B(in) 2 600 -200 200 L 50 50 1 1 I -X A>B(in) 3 600 -300 200 L 50 50 1 1 I -X A3 4 -550 100 200 R 50 50 1 1 I -X B3 5 -550 -350 200 R 50 50 1 1 I -X A2 6 -550 200 200 R 50 50 1 1 I -X B2 7 -550 -250 200 R 50 50 1 1 I -X A1 8 -550 300 200 R 50 50 1 1 I -X B1 9 -550 -150 200 R 50 50 1 1 I -X A0 10 -550 400 200 R 50 50 1 1 I -X B0 11 -550 -50 200 R 50 50 1 1 I -X A>B(out) 12 600 350 200 L 50 50 1 1 O -X A=B(out) 13 600 250 200 L 50 50 1 1 O -X A<B(out) 14 600 150 200 L 50 50 1 1 O -ENDDRAW -ENDDEF -# -# INVCMOS -# -DEF INVCMOS X 0 40 Y Y 1 F N -F0 "X" 0 0 60 H V C CNN -F1 "INVCMOS" -450 150 60 H V C CNN -F2 "" 0 0 60 H I C CNN -F3 "" 0 0 60 H I C CNN -DRAW -C 400 0 112 0 1 0 N -S -250 200 -250 -200 0 1 0 N -P 3 0 1 0 -250 200 300 0 -250 -200 N -X in 1 -450 0 200 R 50 50 1 1 P -X out 2 700 0 200 L 50 50 1 1 P -ENDDRAW -ENDDEF -# -# LM555N -# -DEF LM555N X 0 40 Y Y 1 F N -F0 "X" 0 -50 60 H V C CNN -F1 "LM555N" 0 100 60 H V C CNN -F2 "" -50 0 60 H V C CNN -F3 "" -50 0 60 H V C CNN -DRAW -S 350 -400 -350 400 0 1 0 N -X GND 1 0 -600 200 U 50 50 1 1 W -X TR 2 -550 250 200 R 50 50 1 1 I -X Q 3 550 250 200 L 50 50 1 1 O -X R 4 -550 -250 200 R 50 50 1 1 I I -X CV 5 -550 0 200 R 50 50 1 1 I -X THR 6 550 -250 200 L 50 50 1 1 I -X DIS 7 550 0 200 L 50 50 1 1 I -X VCC 8 0 600 200 D 50 50 1 1 W -ENDDRAW -ENDDEF -# -# LM_7812 -# -DEF LM_7812 X 0 40 Y Y 1 F N -F0 "X" 0 50 60 H V C CNN -F1 "LM_7812" 0 150 60 H V C CNN -F2 "" 0 0 60 H I C CNN -F3 "" 0 0 60 H I C CNN -DRAW -S -350 200 350 -200 0 1 0 N -X IN 1 -550 0 200 R 50 50 1 1 I -X GND 2 0 -400 200 U 50 50 1 1 I -X OUT 3 550 0 200 L 50 50 1 1 O -ENDDRAW -ENDDEF -# -# Lm_7805 -# -DEF Lm_7805 X 0 40 Y Y 1 F N -F0 "X" 0 0 60 H V C CNN -F1 "Lm_7805" 50 150 60 H V C CNN -F2 "" 0 0 60 H I C CNN -F3 "" 0 0 60 H I C CNN -DRAW -S -350 100 350 -200 0 1 0 N -X Vin 1 -550 0 200 R 50 50 1 1 P -X GND 2 0 -400 200 U 50 50 1 1 P -X Vout 3 550 0 200 L 50 50 1 1 P -ENDDRAW -ENDDEF -# -# SCR -# -DEF SCR X 0 10 Y N 1 F N -F0 "X" 150 200 50 H V C CNN -F1 "SCR" 150 -350 50 H V C CNN -F2 "" 0 0 60 H V C CNN -F3 "" 0 0 60 H V C CNN -DRAW -P 2 0 0 0 -200 -150 200 -150 N -P 2 0 1 0 0 -150 -200 -400 N -P 3 0 1 0 -150 100 150 100 0 -150 F -X A 1 0 400 300 D 60 60 1 1 I -X K 2 0 -550 400 U 60 70 1 1 I -X G 3 -350 -400 150 R 60 60 1 1 I -ENDDRAW -ENDDEF -# -# UJT -# -DEF UJT X 0 40 Y Y 1 F N -F0 "X" -50 -50 60 H V C CNN -F1 "UJT" 50 -50 60 H V C CNN -F2 "" -50 -50 60 H I C CNN -F3 "" -50 -50 60 H I C CNN -DRAW -C -50 -50 206 0 1 0 N -P 2 0 1 0 -100 100 -100 -200 N -P 3 0 1 0 -250 0 -200 0 -100 -100 N -P 3 0 1 0 -200 -50 -150 -50 -150 0 N -P 3 0 1 0 -100 -150 0 -150 0 -250 N -P 3 0 1 0 -100 50 0 50 0 150 N -X E 1 -450 0 200 R 50 50 1 1 I -X B1 2 0 -450 200 U 50 50 1 1 B -X B2 3 0 350 200 D 50 50 1 1 B -ENDDRAW -ENDDEF -# -# full_adder -# -DEF full_adder X 0 40 Y Y 1 F N -F0 "X" 1400 700 60 H V C CNN -F1 "full_adder" 1400 600 60 H V C CNN -F2 "" 0 0 60 H V C CNN -F3 "" 0 0 60 H V C CNN -DRAW -S 800 1150 1950 0 0 1 0 N -X IN1 1 600 950 200 R 50 50 1 1 I -X IN2 2 600 550 200 R 50 50 1 1 I -X CIN 3 600 150 200 R 50 50 1 1 I -X SUM 4 2150 950 200 L 50 50 1 1 O -X COUT 5 2150 150 200 L 50 50 1 1 O -ENDDRAW -ENDDEF -# -# full_sub -# -DEF full_sub X 0 40 Y Y 1 F N -F0 "X" 0 0 60 H V C CNN -F1 "full_sub" 0 0 60 H V C CNN -F2 "" 0 0 60 H V C CNN -F3 "" 0 0 60 H V C CNN -DRAW -S -550 650 450 -600 0 1 0 N -X A 1 -750 400 200 R 50 50 1 1 I -X B 2 -750 200 200 R 50 50 1 1 I -X BIN 3 -750 -200 200 R 50 50 1 1 I -X DIFF 4 650 450 200 L 50 50 1 1 O -X BORROW 5 650 150 200 L 50 50 1 1 O -ENDDRAW -ENDDEF -# -# half_adder -# -DEF half_adder X 0 40 Y Y 1 F N -F0 "X" 900 500 60 H V C CNN -F1 "half_adder" 900 400 60 H V C CNN -F2 "" 0 0 60 H V C CNN -F3 "" 0 0 60 H V C CNN -DRAW -S 500 800 1250 0 0 1 0 N -X IN1 1 300 700 200 R 50 50 1 1 I -X IN2 2 300 100 200 R 50 50 1 1 I -X SUM 3 1450 700 200 L 50 50 1 1 O -X COUT 4 1450 100 200 L 50 50 1 1 O -ENDDRAW -ENDDEF -# -# half_sub -# -DEF half_sub X 0 40 Y Y 1 F N -F0 "X" 0 0 60 H V C CNN -F1 "half_sub" 0 0 60 H V C CNN -F2 "" 0 0 60 H I C CNN -F3 "" 0 0 60 H I C CNN -DRAW -S -300 300 300 -300 0 1 0 N -X A 1 -500 200 200 R 50 50 1 1 I -X B 2 -500 -100 200 R 50 50 1 1 I -X D 3 500 150 200 L 50 50 1 1 O -X BORROW 4 500 -100 200 L 50 50 1 1 O -ENDDRAW -ENDDEF -# -# lm_741 -# -DEF lm_741 X 0 40 Y Y 1 F N -F0 "X" -200 0 60 H V C CNN -F1 "lm_741" -100 -250 60 H V C CNN -F2 "" 0 0 60 H V C CNN -F3 "" 0 0 60 H V C CNN -DRAW -P 4 0 1 0 -350 350 350 0 -350 -350 -350 350 N -X off_null 1 -50 400 200 D 50 38 1 1 I -X inv 2 -550 150 200 R 50 38 1 1 I -X non_inv 3 -550 -100 200 R 50 38 1 1 I -X v_neg 4 -150 -450 200 U 50 38 1 1 I -X off_null 5 50 350 200 D 50 38 1 1 I -X out 6 550 0 200 L 50 38 1 1 O -X v_pos 7 -150 450 200 D 50 38 1 1 I -X NC 8 150 -300 200 U 50 38 1 1 N -ENDDRAW -ENDDEF -# -#End Library diff --git a/src/kicadtoNgspice/DeviceModel.py b/src/kicadtoNgspice/DeviceModel.py deleted file mode 100644 index 5fd4d829..00000000 --- a/src/kicadtoNgspice/DeviceModel.py +++ /dev/null @@ -1,431 +0,0 @@ -from PyQt5 import QtWidgets, QtCore -import os -from xml.etree import ElementTree as ET -from . import TrackWidget - - -class DeviceModel(QtWidgets.QWidget): - """ - - This class creates Device Library Tab in KicadtoNgspice Window - It dynamically creates the widget for device like diode,mosfet, - transistor and jfet. - - Same function as the subCircuit file, except for - this takes different parameters in the if block - - q TRANSISTOR - - d DIODE - - j JFET - - m MOSFET - - Other 2 functions same as the ones in subCircuit - - trackLibrary - - trackLibraryWithoutButton - """ - - def __init__(self, schematicInfo, clarg1): - - self.clarg1 = clarg1 - kicadFile = self.clarg1 - (projpath, filename) = os.path.split(kicadFile) - project_name = os.path.basename(projpath) - - try: - f = open( - os.path.join( - projpath, - project_name + - "_Previous_Values.xml"), - 'r') - tree = ET.parse(f) - parent_root = tree.getroot() - for child in parent_root: - if child.tag == "devicemodel": - root = child - except BaseException: - print("Device Model Previous XML is Empty") - - QtWidgets.QWidget.__init__(self) - - # Creating track widget object - self.obj_trac = TrackWidget.TrackWidget() - - # Row and column count - self.row = 0 - self.count = 1 # Entry count - self.entry_var = {} - - # For MOSFET - self.widthLabel = {} - self.lengthLabel = {} - self.multifactorLable = {} - self.devicemodel_dict_beg = {} - self.devicemodel_dict_end = {} - # List to hold information about device - self.deviceDetail = {} - - # Set Layout - self.grid = QtWidgets.QGridLayout() - self.setLayout(self.grid) - # print("Reading Device model details from Schematic") - - for eachline in schematicInfo: - print("=========================================") - print(eachline) - words = eachline.split() - if eachline[0] == 'q': - # print("Device Model Transistor: ", words[0]) - self.devicemodel_dict_beg[words[0]] = self.count - transbox = QtWidgets.QGroupBox() - transgrid = QtWidgets.QGridLayout() - transbox.setTitle( - "Add library for Transistor " + - words[0] + - " : " + - words[4]) - self.entry_var[self.count] = QtWidgets.QLineEdit() - self.entry_var[self.count].setText("") - global path_name - - try: - for child in root: - if child.tag == words[0]: - # print("DEVICE MODEL MATCHING---", \ - # child.tag, words[0]) - try: - if child[0].text \ - and os.path.exists(child[0].text): - self.entry_var[self.count] \ - .setText(child[0].text) - path_name = child[0].text - else: - self.entry_var[self.count].setText("") - except BaseException as e: - print("Error when set text of device " + - "model transistor :", str(e)) - except BaseException: - pass - - transgrid.addWidget(self.entry_var[self.count], self.row, 1) - self.addbtn = QtWidgets.QPushButton("Add") - self.addbtn.setObjectName("%d" % self.count) - self.addbtn.clicked.connect(self.trackLibrary) - self.deviceDetail[self.count] = words[0] - - if self.entry_var[self.count].text() == "": - pass - else: - self.trackLibraryWithoutButton(self.count, path_name) - - transgrid.addWidget(self.addbtn, self.row, 2) - transbox.setLayout(transgrid) - - # CSS - transbox.setStyleSheet(" \ - QGroupBox { border: 1px solid gray; border-radius: \ - 9px; margin-top: 0.5em; } \ - QGroupBox::title { subcontrol-origin: margin; left:\ - 10px; padding: 0 3px 0 3px; } \ - ") - - self.grid.addWidget(transbox) - - # Adding Device Details # - - # Increment row and widget count - self.row = self.row + 1 - self.devicemodel_dict_end[words[0]] = self.count - self.count = self.count + 1 - - elif eachline[0] == 'd': - # print("Device Model Diode:", words[0]) - self.devicemodel_dict_beg[words[0]] = self.count - diodebox = QtWidgets.QGroupBox() - diodegrid = QtWidgets.QGridLayout() - diodebox.setTitle( - "Add library for Diode " + - words[0] + - " : " + - words[3]) - self.entry_var[self.count] = QtWidgets.QLineEdit() - self.entry_var[self.count].setText("") - # global path_name - try: - for child in root: - if child.tag == words[0]: - # print("DEVICE MODEL MATCHING---", \ - # child.tag, words[0]) - try: - if child[0].text \ - and os.path.exists(child[0].text): - path_name = child[0].text - self.entry_var[self.count] \ - .setText(child[0].text) - else: - self.entry_var[self.count].setText("") - except BaseException as e: - print("Error when set text of device " + - "model diode :", str(e)) - except BaseException: - pass - - diodegrid.addWidget(self.entry_var[self.count], self.row, 1) - self.addbtn = QtWidgets.QPushButton("Add") - self.addbtn.setObjectName("%d" % self.count) - self.addbtn.clicked.connect(self.trackLibrary) - self.deviceDetail[self.count] = words[0] - - if self.entry_var[self.count].text() == "": - pass - else: - self.trackLibraryWithoutButton(self.count, path_name) - - diodegrid.addWidget(self.addbtn, self.row, 2) - diodebox.setLayout(diodegrid) - - # CSS - diodebox.setStyleSheet(" \ - QGroupBox { border: 1px solid gray; border-radius: \ - 9px; margin-top: 0.5em; } \ - QGroupBox::title { subcontrol-origin: margin; left:\ - 10px; padding: 0 3px 0 3px; } \ - ") - - self.grid.addWidget(diodebox) - - # Adding Device Details # - - # Increment row and widget count - self.row = self.row + 1 - self.devicemodel_dict_end[words[0]] = self.count - self.count = self.count + 1 - - elif eachline[0] == 'j': - # print("Device Model JFET:", words[0]) - self.devicemodel_dict_beg[words[0]] = self.count - jfetbox = QtWidgets.QGroupBox() - jfetgrid = QtWidgets.QGridLayout() - jfetbox.setTitle( - "Add library for JFET " + - words[0] + - " : " + - words[4]) - self.entry_var[self.count] = QtWidgets.QLineEdit() - self.entry_var[self.count].setText("") - # global path_name - try: - for child in root: - if child.tag == words[0]: - # print("DEVICE MODEL MATCHING---", \ - # child.tag, words[0]) - try: - if child[0].text \ - and os.path.exists(child[0].text): - self.entry_var[self.count] \ - .setText(child[0].text) - path_name = child[0].text - else: - self.entry_var[self.count].setText("") - except BaseException as e: - print("Error when set text of Device " + - "Model JFET :", str(e)) - except BaseException: - pass - - jfetgrid.addWidget(self.entry_var[self.count], self.row, 1) - self.addbtn = QtWidgets.QPushButton("Add") - self.addbtn.setObjectName("%d" % self.count) - self.addbtn.clicked.connect(self.trackLibrary) - self.deviceDetail[self.count] = words[0] - - if self.entry_var[self.count].text() == "": - pass - else: - self.trackLibraryWithoutButton(self.count, path_name) - - jfetgrid.addWidget(self.addbtn, self.row, 2) - jfetbox.setLayout(jfetgrid) - - # CSS - jfetbox.setStyleSheet(" \ - QGroupBox { border: 1px solid gray; border-radius:\ - 9px; margin-top: 0.5em; } \ - QGroupBox::title { subcontrol-origin: margin; left:\ - 10px; padding: 0 3px 0 3px; } \ - ") - - self.grid.addWidget(jfetbox) - - # Adding Device Details # - - # Increment row and widget count - self.row = self.row + 1 - self.devicemodel_dict_end[words[0]] = self.count - self.count = self.count + 1 - - elif eachline[0] == 'm': - self.devicemodel_dict_beg[words[0]] = self.count - mosfetbox = QtWidgets.QGroupBox() - mosfetgrid = QtWidgets.QGridLayout() - i = self.count - beg = self.count - mosfetbox.setTitle( - "Add library for MOSFET " + - words[0] + - " : " + - words[5]) - self.entry_var[self.count] = QtWidgets.QLineEdit() - self.entry_var[self.count].setText("") - mosfetgrid.addWidget(self.entry_var[self.count], self.row, 1) - self.addbtn = QtWidgets.QPushButton("Add") - self.addbtn.setObjectName("%d" % self.count) - self.addbtn.clicked.connect(self.trackLibrary) - mosfetgrid.addWidget(self.addbtn, self.row, 2) - - # Adding Device Details - self.deviceDetail[self.count] = words[0] - - # Increment row and widget count - self.row = self.row + 1 - self.count = self.count + 1 - - # Adding to get MOSFET dimension - self.widthLabel[self.count] = QtWidgets.QLabel( - "Enter width of MOSFET " + words[0] + "(default=100u):") - mosfetgrid.addWidget(self.widthLabel[self.count], self.row, 0) - self.entry_var[self.count] = QtWidgets.QLineEdit() - self.entry_var[self.count].setText("") - self.entry_var[self.count].setMaximumWidth(150) - mosfetgrid.addWidget(self.entry_var[self.count], self.row, 1) - self.row = self.row + 1 - self.count = self.count + 1 - - self.lengthLabel[self.count] = QtWidgets.QLabel( - "Enter length of MOSFET " + words[0] + "(default=100u):") - mosfetgrid.addWidget(self.lengthLabel[self.count], self.row, 0) - self.entry_var[self.count] = QtWidgets.QLineEdit() - self.entry_var[self.count].setText("") - self.entry_var[self.count].setMaximumWidth(150) - mosfetgrid.addWidget(self.entry_var[self.count], self.row, 1) - self.row = self.row + 1 - self.count = self.count + 1 - - self.multifactorLable[self.count] = QtWidgets.QLabel( - "Enter multiplicative factor of MOSFET " + - words[0] + "(default=1):") - mosfetgrid.addWidget( - self.multifactorLable[self.count], self.row, 0) - self.entry_var[self.count] = QtWidgets.QLineEdit() - self.entry_var[self.count].setText("") - end = self.count - self.entry_var[self.count].setMaximumWidth(150) - mosfetgrid.addWidget(self.entry_var[self.count], self.row, 1) - self.row = self.row + 1 - self.devicemodel_dict_end[words[0]] = self.count - self.count = self.count + 1 - mosfetbox.setLayout(mosfetgrid) - - # global path_name - try: - for child in root: - if child.tag == words[0]: - # print("DEVICE MODEL MATCHING---", \ - # child.tag, words[0]) - while i <= end: - self.entry_var[i].setText(child[i-beg].text) - if (i - beg) == 0: - if os.path.exists(child[0].text): - self.entry_var[i] \ - .setText(child[i-beg].text) - path_name = child[i-beg].text - else: - self.entry_var[i].setText("") - i = i + 1 - except BaseException: - pass - # CSS - mosfetbox.setStyleSheet(" \ - QGroupBox { border: 1px solid gray; border-radius:\ - 9px; margin-top: 0.5em; } \ - QGroupBox::title { subcontrol-origin: margin; left: \ - 10px; padding: 0 3px 0 3px; } \ - ") - if self.entry_var[beg].text() == "": - pass - else: - self.trackLibraryWithoutButton(beg, path_name) - - self.grid.addWidget(mosfetbox) - - self.show() - - def trackLibrary(self): - """ - This function is use to keep track of all Device Model widget - """ - print("Calling Track Device Model Library funtion") - sending_btn = self.sender() - self.widgetObjCount = int(sending_btn.objectName()) - - init_path = '../../' - if os.name == 'nt': - init_path = '' - - self.libfile = QtCore.QDir.toNativeSeparators( - QtWidgets.QFileDialog.getOpenFileName( - self, "Open Library Directory", - init_path + "library/deviceModelLibrary", "*.lib" - )[0] - ) - - if not self.libfile: - return - - # Setting Library to Text Edit Line - self.entry_var[self.widgetObjCount].setText(self.libfile) - self.deviceName = self.deviceDetail[self.widgetObjCount] - - # Storing to track it during conversion - if self.deviceName[0] == 'm': - width = str(self.entry_var[self.widgetObjCount + 1].text()) - length = str(self.entry_var[self.widgetObjCount + 2].text()) - multifactor = str(self.entry_var[self.widgetObjCount + 3].text()) - if width == "": - width = "100u" - if length == "": - length = "100u" - if multifactor == "": - multifactor = "1" - - self.obj_trac.deviceModelTrack[self.deviceName] = self.libfile + \ - ":" + "W=" + width + " L=" + length + " M=" + multifactor - - else: - self.obj_trac.deviceModelTrack[self.deviceName] = self.libfile - - def trackLibraryWithoutButton(self, iter_value, path_value): - """ - This function is use to keep track of all Device Model widget - """ - print("Calling Track Library function Without Button") - self.widgetObjCount = iter_value - print("self.widgetObjCount-----", self.widgetObjCount) - self.libfile = path_value - print("PATH VALUE", path_value) - - # Setting Library to Text Edit Line - self.entry_var[self.widgetObjCount].setText(self.libfile) - self.deviceName = self.deviceDetail[self.widgetObjCount] - - # Storing to track it during conversion - if self.deviceName[0] == 'm': - width = str(self.entry_var[self.widgetObjCount + 1].text()) - length = str(self.entry_var[self.widgetObjCount + 2].text()) - multifactor = str(self.entry_var[self.widgetObjCount + 3].text()) - if width == "": - width = "100u" - if length == "": - length = "100u" - if multifactor == "": - multifactor = "1" - self.obj_trac.deviceModelTrack[self.deviceName] = self.libfile + \ - ":" + "W=" + width + " L=" + length + " M=" + multifactor - else: - self.obj_trac.deviceModelTrack[self.deviceName] = self.libfile |