# -*- coding: cp1252 -*- ''' Created on 07.02.2012 @author: sth2mt ''' import time import FertigungsTest.Hardware.AD7999 as AD7999 ###ÄÄÄ class Treiber(object): ''' classdocs ''' # Achtung dies ist Pseudo Singleton -> variablen werden statisch verwendet. Aufgeraumt wird erst wenn alle instanzen weg sindwird nur einmal instaniiert !!!! ObjCount = 0 _Thread_name = "RL_Schalter" stout = False O_AD7999 = None def __init__(self): ''' Constructor ''' Treiber.ObjCount += 1 self.printf("%i.Construktor %s Anzahl" % (Treiber.ObjCount,Treiber._Thread_name)) if Treiber.O_AD7999 == None: Treiber.O_AD7999= AD7999.Treiber() pass def __del__(self): ''' Destructor ''' self.printf("%i Destruktor %s" % (Treiber.ObjCount,Treiber._Thread_name)) if Treiber.ObjCount == 1: self.printf("Reste aufraumen") del(Treiber.O_AD7999) Treiber.O_AD7999 = None if Treiber.ObjCount > 0: Treiber.ObjCount -= 1 pass def GetAnalog(self): return Treiber.O_AD7999.readAnalog(Treiber.O_AD7999.RL_SWITCH) def GetZustand(self): ADWert=self.GetAnalog() self.printf(ADWert) if ADWert == 2: return -1#links elif ADWert == 0: return 0 elif ADWert == 1: return 1 #rechts pass def GetL(self): return (self.GetZustand()<0) pass def GetR(self): return (self.GetZustand()>0) pass def printf(self,string): if Treiber.stout: print string pass