Пример #1
0
    def _processType(self):
        """process raw data into appropriate primative format"""
        data = copy.copy(self.srcData)
        if self.format == 'psName':
            if drawer.isStr(data):
                return data
            else:
                return None
        elif self.format == 'psReal': # psReal values should not be rounded
            if drawer.isStr(data):
                try:
                    return float(data)
                except ValueError:
                    return None
            else:
                return data

        elif self.format == 'midi': #midi values should always be rounded
            if drawer.isStr(data):
                data = drawer.strStripAlpha(data)
                try:
                    return float(data) # dont convert to int
                except ValueError:
                    return None
            elif drawer.isInt(data):
                return data
            else: # its a float, round
                return data

        elif self.format == 'pch': # floating point values
            if drawer.isStr(data):
                data = drawer.strStripAlpha(data)
                try:
                    return _normalizePch(float(data))
                except ValueError:
                    return None
            if drawer.isFloat(data):
                return _normalizePch(data)
            else: # something is wrong
                return None

        elif self.format == 'fq': # floating point values
            if drawer.isStr(data):
                data = drawer.strStripAlpha(data)
                try:
                    return float(data)
                except ValueError:
                    return None
            if drawer.isNum(data):
                return float(data) # convert to float
            else: # something is wrong
                return None

        else: # error
            return None
Пример #2
0
    def _processType(self):
        """process raw data into appropriate primative format"""
        data = copy.copy(self.srcData)
        if self.format == 'psName':
            if drawer.isStr(data):
                return data
            else:
                return None
        elif self.format == 'psReal': # psReal values should not be rounded
            if drawer.isStr(data):
                try:
                    return float(data)
                except ValueError:
                    return None
            else:
                return data

        elif self.format == 'midi': #midi values should always be rounded
            if drawer.isStr(data):
                data = drawer.strStripAlpha(data)
                try:
                    return float(data) # dont convert to int
                except ValueError:
                    return None
            elif drawer.isInt(data):
                return data
            else: # its a float, round
                return data

        elif self.format == 'pch': # floating point values
            if drawer.isStr(data):
                data = drawer.strStripAlpha(data)
                try:
                    return _normalizePch(float(data))
                except ValueError:
                    return None
            if drawer.isFloat(data):
                return _normalizePch(data)
            else: # something is wrong
                return None

        elif self.format == 'fq': # floating point values
            if drawer.isStr(data):
                data = drawer.strStripAlpha(data)
                try:
                    return float(data)
                except ValueError:
                    return None
            if drawer.isNum(data):
                return float(data) # convert to float
            else: # something is wrong
                return None

        else: # error
            return None
Пример #3
0
 def _parseFq(self, usrStr):
     """conver midi values to psInt values"""
     usrStr = drawer.strStripAlpha(usrStr)
     usrList = drawer.strToListFlat(usrStr, 'L')
     #usrList = usrStr.split(',')
     psList = []
     for elem in usrList:  # may be int or float
         elem = drawer.strToNum(elem.strip(), 'num')
         if elem == None: continue
         else: psList.append(pitchTools.fqToPs(elem))
     return psList
Пример #4
0
 def _parseFq(self, usrStr):
     """conver midi values to psInt values"""
     usrStr = drawer.strStripAlpha(usrStr)
     usrList = drawer.strToListFlat(usrStr, 'L')
     #usrList = usrStr.split(',')
     psList = []
     for elem in usrList: # may be int or float
         elem = drawer.strToNum(elem.strip(), 'num')
         if elem == None: continue
         else: psList.append(pitchTools.fqToPs(elem))
     return psList