def __init__(self, config, net):
        self.config = config
        self.net = net
        self.avg = util.getAverage(self.net.datacut, self.net.datafold)

        self.datalist = []
        self.datanum = 0
        self.has32 = False

        # Classify2
        self.previouspredict = 6
        self.predcounter = 0
        self.predHistSize = 8
        self.predHistHalfUpper = 5
        self.predcountertreshold = 5
        self.predHistory = util.createArraySix(self.predHistSize, )

        # Classify3 method
        self.predhistoryforclassify3 = {
            0: 0,
            1: 0,
            2: 0,
            3: 0,
            4: 0,
            5: 0,
            6: 0
        }
        self.classify3start = False

        # classify4 & 5
        self.start = 0
        self.buffer = []
        self.liveData = []
        self.beginClassify = 0
        self.beginMax = 0
        self.maxValue = 0
        self.maxValueList = []

        # For interacting with OS
        self.outkeys = None
        if (c.getInstance().getOSConfig()['type'] == "posix"):
            from systemkeys import SystemKeys
            self.outkeys = SystemKeys()

        self.classifyMethods = {
            1: self.__classify1,
            2: self.__classify2,
            3: self.__classify3,
            4: self.__classify4,
            5: self.__classify5
        }