From 12075d77f53af6b404ef6ab643e3eb100e515829 Mon Sep 17 00:00:00 2001
From: "Michael D. M. Dryden" <mdryden@chem.utoronto.ca>
Date: Wed, 27 Aug 2014 13:56:20 -0400
Subject: [PATCH] dstat_comm classes now call super's __init__ and use proper
 naming

---
 dstat-interface/dstat-interface/dstat_comm.py | 43 +++++++------------
 dstat-interface/dstat-interface/main.py       | 10 ++---
 2 files changed, 21 insertions(+), 32 deletions(-)

diff --git a/dstat-interface/dstat-interface/dstat_comm.py b/dstat-interface/dstat-interface/dstat_comm.py
index ff4dab0..b34eddb 100644
--- a/dstat-interface/dstat-interface/dstat_comm.py
+++ b/dstat-interface/dstat-interface/dstat_comm.py
@@ -54,13 +54,11 @@ class Experiment(object):
         self.proc.start()
 
     def __init__(self, parameters, main_pipe):
-        """Must be overridden to define self.parameters, and self.databytes."""
+        """Adds commands for gain and ADC."""
         self.parameters = parameters
         self.main_pipe = main_pipe
         self.databytes = 8
-    
-    def init(self):
-        """Adds commands for gain and ADC."""
+
         self.data_extra = []  # must be defined even when not needed
         self.__gaintable = [1e2, 3e2, 3e3, 3e4, 3e5, 3e6, 3e7, 5e8]
         self.gain = self.__gaintable[int(self.parameters['gain'])]
@@ -147,11 +145,11 @@ class Experiment(object):
         """
         pass
 
-class chronoamp(Experiment):
+class Chronoamp(Experiment):
     """Chronoamperometry experiment"""
     def __init__(self, parameters, main_pipe):
-        self.main_pipe = main_pipe
-        self.parameters = parameters
+        super(Chronoamp, self).__init__(parameters, main_pipe)
+
         self.datatype = "linearData"
         self.xlabel = "Time (s)"
         self.ylabel = "Current (A)"
@@ -164,8 +162,6 @@ class chronoamp(Experiment):
         for i in self.parameters['time']:
             self.xmax += int(i)
         
-        self.init()  # need to call after xmin and xmax are set
-        
         self.commands += "R"
         self.commands[2] += str(len(self.parameters['potential']))
         self.commands[2] += " "
@@ -184,11 +180,10 @@ class chronoamp(Experiment):
         return (scan,
                 [seconds+milliseconds/1000., current*(1.5/self.gain/8388607)])
 
-class lsv_exp(Experiment):
+class LSVExp(Experiment):
     """Linear Scan Voltammetry experiment"""
-    def __init__(self, parameters, send_pipe):
-        self.main_pipe = send_pipe
-        self.parameters = parameters
+    def __init__(self, parameters, main_pipe):
+        super(LSVExp, self).__init__(parameters, main_pipe)
 
         self.datatype = "linearData"
         self.xlabel = "Voltage (mV)"
@@ -219,11 +214,10 @@ class lsv_exp(Experiment):
         self.commands[2] += str(self.parameters['slope'])
         self.commands[2] += " "
 
-class cv_exp(Experiment):
+class CVExp(Experiment):
     """Cyclic Voltammetry experiment"""
     def __init__(self, parameters, main_pipe):
-        self.main_pipe = main_pipe
-        self.parameters = parameters
+        super(CVExp, self).__init__(parameters, main_pipe)
  
         self.datatype = "CVData"
         self.xlabel = "Voltage (mV)"
@@ -234,8 +228,6 @@ class cv_exp(Experiment):
         self.xmin = self.parameters['v1']
         self.xmax = self.parameters['v2']
         
-        self.init()
-        
         self.commands += "C"
         self.commands[2] += str(self.parameters['clean_s'])
         self.commands[2] += " "
@@ -258,11 +250,10 @@ class cv_exp(Experiment):
         self.commands[2] += str(self.parameters['slope'])
         self.commands[2] += " "
 
-class swv_exp(Experiment):
+class SWVExp(Experiment):
     """Square Wave Voltammetry experiment"""
     def __init__(self, parameters, main_pipe):
-        self.main_pipe = main_pipe
-        self.parameters = parameters
+        super(SWVExp, self).__init__(parameters, main_pipe)
 
         self.datatype = "SWVData"
         self.xlabel = "Voltage (mV)"
@@ -273,8 +264,7 @@ class swv_exp(Experiment):
         
         self.xmin = self.parameters['start']
         self.xmax = self.parameters['stop']
-        
-        self.init()
+
         # forward/reverse stored here - needs to be after 
         # self.init to keep from being redefined
         self.data_extra = [[], []]  
@@ -314,12 +304,11 @@ class swv_exp(Experiment):
                        reverse*(1.5/self.gain/8388607)])
 
 
-class dpv_exp(swv_exp):
+class DPVExp(SWVExp):
     """Diffential Pulse Voltammetry experiment."""
     def __init__(self, parameters, main_pipe):
-        """Overrides swv_exp method"""
-        self.main_pipe = main_pipe
-        self.parameters = parameters
+        """Overrides SWVExp method"""
+        super(DPVExp, self).__init__(parameters, main_pipe)
         
         self.datatype = "SWVData"
         self.xlabel = "Voltage (mV)"
diff --git a/dstat-interface/dstat-interface/main.py b/dstat-interface/dstat-interface/main.py
index 9efe867..fe6f9ce 100644
--- a/dstat-interface/dstat-interface/main.py
+++ b/dstat-interface/dstat-interface/main.py
@@ -205,7 +205,7 @@ class Main(object):
                                      "Step table is empty")
                 
                 self.recv_p, self.send_p = multiprocessing.Pipe(duplex=True)
-                self.current_exp = comm.chronoamp(parameters, self.send_p)
+                self.current_exp = comm.Chronoamp(parameters, self.send_p)
                 
                 self.plot.clearall()
                 self.plot.changetype(self.current_exp)
@@ -257,7 +257,7 @@ class Main(object):
                                      "Start cannot equal Stop.")
 
                 self.recv_p, self.send_p = multiprocessing.Pipe(duplex=True)
-                self.current_exp = comm.lsv_exp(parameters, self.send_p)
+                self.current_exp = comm.LSVExp(parameters, self.send_p)
                 
                 self.plot.clearall()
                 self.plot.changetype(self.current_exp)
@@ -316,7 +316,7 @@ class Main(object):
                                      "Vertex 1 cannot equal Vertex 2.")
                 
                 self.recv_p, self.send_p = multiprocessing.Pipe(duplex=True)
-                self.current_exp = comm.cv_exp(parameters, self.send_p)
+                self.current_exp = comm.CVExp(parameters, self.send_p)
                 
                 self.plot.clearall()
                 self.plot.changetype(self.current_exp)
@@ -384,7 +384,7 @@ class Main(object):
                                      "Start cannot equal Stop.")
                     
                 self.recv_p, self.send_p = multiprocessing.Pipe(duplex=True)
-                self.current_exp = comm.swv_exp(parameters, self.send_p)
+                self.current_exp = comm.SWVExp(parameters, self.send_p)
                 
                 self.plot.clearall()
                 self.plot.changetype(self.current_exp)
@@ -448,7 +448,7 @@ class Main(object):
                                      "Start cannot equal Stop.")
                 
                 self.recv_p, self.send_p = multiprocessing.Pipe(duplex=True)
-                self.current_exp = comm.dpv_exp(parameters, self.send_p)
+                self.current_exp = comm.DPVExp(parameters, self.send_p)
                 
                 self.plot.clearall()
                 self.plot.changetype(self.current_exp)
-- 
GitLab