Ignore:
Timestamp:
05/11/12 14:28:38 (9 years ago)
Author:
sc
Message:

session handling cleanup

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Puzzlebox/Synapse/ThinkGear/Server.py

    r393 r394  
    539539        ################################################################## 
    540540         
    541         #def exportDataToCSV(self, parent=None, source=None, target=None): 
    542                  
    543                 ## handle importing class from multiple sources 
    544                 #if parent == None: 
    545                         #if self.parent == None: 
    546                                 #parent = self 
    547                         #else: 
    548                                 #parent = self.parent 
    549                  
    550                 #if source == None: 
    551                         #if self.parent == None: 
    552                                 #source = self 
    553                         #else: 
    554                                 #source = self.parent 
    555                  
    556                 #if target == None: 
    557                         #if self.parent == None: 
    558                                 #target = self 
    559                         #else: 
    560                                 #target = self.parent 
    561                  
    562                 #try: 
    563                         #truncate_csv_timezone = target.configuration.EXPORT_CSV_TRUNCATE_TIMEZONE 
    564                 #except: 
    565                         #truncate_csv_timezone = False 
    566                  
    567                  
    568                 #if not self.emulate_headset_data: 
    569                         ## NOTE: no need to scrub emulated data 
    570                         #try: 
    571                                 #scrub_data = target.configuration.EXPORT_CSV_SCRUB_DATA 
    572                         #except: 
    573                                 #scrub_data = False 
    574                 #else: 
    575                         #scrub_data = False 
    576                  
    577                 ##headers = 'Date,Time' 
    578                 #headers = 'Date,Time,Attention,Meditation,Signal Level,Delta,Theta,Low Alpha,High Alpha,Low Beta,High Beta,Low Gamma,Mid Gamma' 
    579                 ##headers = self.customDataHeaders 
    580                  
    581                 #customDataHeaders = [] 
    582                 #for header in parent.customDataHeaders: 
    583                         #customDataHeaders.append(header) 
    584                 #for plugin in parent.activePlugins: 
    585                         #for header in plugin.customDataHeaders: 
    586                                 #customDataHeaders.append(header) 
    587                  
    588                 #for each in customDataHeaders: 
    589                         #headers = headers + ',%s' % each 
    590                  
    591                 #headers = headers + '\n' 
    592                  
    593                  
    594                 #csv = {} 
    595                  
    596                 #for packet in source.packets['signals']: 
    597                          
    598                          
    599                         #if 'rawEeg' in packet.keys(): 
    600                                 #continue 
    601                          
    602                         #if packet['timestamp'] not in csv.keys(): 
    603                                  
    604                                 #if 'blinkStrength' in packet.keys(): 
    605                                         ## Skip any blink packets from log 
    606                                         #continue 
    607                                  
    608                                  
    609                                 #timestamp = packet['timestamp'] 
    610                                 ##(date, localtime) = self.parseTimeStamp(timestamp, \ 
    611                                                     ##truncate_time_zone=truncate_csv_timezone) 
    612                                 #(date, localtime) = source.parseTimeStamp(timestamp, \ 
    613                                                     #truncate_time_zone=truncate_csv_timezone) 
    614                                  
    615                                 #csv[timestamp] = {} 
    616                                 #csv[timestamp]['Date'] = date 
    617                                 #csv[timestamp]['Time'] = localtime 
    618                                 #csv[timestamp]['Attention'] = '' 
    619                                 #csv[timestamp]['Meditation'] = '' 
    620                                 #csv[timestamp]['Signal Level'] = '' 
    621                                 #csv[timestamp]['Delta'] = '' 
    622                                 #csv[timestamp]['Theta'] = '' 
    623                                 #csv[timestamp]['Low Alpha'] = '' 
    624                                 #csv[timestamp]['High Alpha'] = '' 
    625                                 #csv[timestamp]['Low Beta'] = '' 
    626                                 #csv[timestamp]['High Beta'] = '' 
    627                                 #csv[timestamp]['Low Gamma'] = '' 
    628                                 #csv[timestamp]['Mid Gamma'] = '' 
    629                                  
    630                                 #for header in customDataHeaders: 
    631                                         #csv[timestamp][header] = '' 
    632                          
    633                          
    634                         #if 'eSense' in packet.keys(): 
    635                                 #if 'attention' in packet['eSense'].keys(): 
    636                                         #csv[timestamp]['Attention'] = packet['eSense']['attention'] 
    637                                 #if 'meditation' in packet['eSense'].keys(): 
    638                                         #csv[timestamp]['Meditation'] = packet['eSense']['meditation'] 
    639                          
    640                         #if 'poorSignalLevel' in packet.keys(): 
    641                                 #csv[timestamp]['Signal Level'] = packet['poorSignalLevel'] 
    642                          
    643                         #if 'eegPower' in packet.keys(): 
    644                                 #if 'delta' in packet['eegPower'].keys(): 
    645                                         #csv[timestamp]['Delta'] = packet['eegPower']['delta'] 
    646                                 #if 'theta' in packet['eegPower'].keys(): 
    647                                         #csv[timestamp]['Theta'] = packet['eegPower']['theta'] 
    648                                 #if 'lowAlpha' in packet['eegPower'].keys(): 
    649                                         #csv[timestamp]['Low Alpha'] = packet['eegPower']['lowAlpha'] 
    650                                 #if 'highAlpha' in packet['eegPower'].keys(): 
    651                                         #csv[timestamp]['High Alpha'] = packet['eegPower']['highAlpha'] 
    652                                 #if 'lowBeta' in packet['eegPower'].keys(): 
    653                                         #csv[timestamp]['Low Beta'] = packet['eegPower']['lowBeta'] 
    654                                 #if 'highBeta' in packet['eegPower'].keys(): 
    655                                         #csv[timestamp]['High Beta'] = packet['eegPower']['highBeta'] 
    656                                 #if 'lowGamma' in packet['eegPower'].keys(): 
    657                                         #csv[timestamp]['Low Gamma'] = packet['eegPower']['lowGamma'] 
    658                                 #if 'highGamma' in packet['eegPower'].keys(): 
    659                                         #csv[timestamp]['Mid Gamma'] = packet['eegPower']['highGamma'] 
    660                          
    661                         #for header in customDataHeaders: 
    662                                 #if 'custom' in packet.keys() and \ 
    663                                    #header in packet['custom'].keys(): 
    664                                         #csv[timestamp][header] = packet['custom'][header] 
    665                  
    666                  
    667                 #if scrub_data: 
    668                         #csv = self.scrubData(csv, truncate_csv_timezone, source=source) 
    669                  
    670                  
    671                 #output = headers 
    672                  
    673                 #csv_keys = csv.keys() 
    674                 #csv_keys.sort() 
    675                  
    676                 #for key in csv_keys: 
    677                          
    678                         #row = '%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s' % \ 
    679                               #(csv[key]['Date'], \ 
    680                                #csv[key]['Time'], \ 
    681                                #csv[key]['Attention'], \ 
    682                                #csv[key]['Meditation'], \ 
    683                                #csv[key]['Signal Level'], \ 
    684                                #csv[key]['Delta'], \ 
    685                                #csv[key]['Theta'], \ 
    686                                #csv[key]['Low Alpha'], \ 
    687                                #csv[key]['High Alpha'], \ 
    688                                #csv[key]['Low Beta'], \ 
    689                                #csv[key]['High Beta'], \ 
    690                                #csv[key]['Low Gamma'], \ 
    691                                #csv[key]['Mid Gamma']) 
    692                          
    693                         #for header in customDataHeaders: 
    694                                 #row = row + ',%s' % csv[key][header] 
    695                          
    696                         #row = row + '\n' 
    697                          
    698                         #output = output + row 
    699                  
    700                  
    701                 #return(output) 
    702          
    703          
    704         ################################################################## 
    705          
    706         #def scrubData(self, csv, truncate_csv_timezone=False, source=None): 
    707                  
    708                 ## If there are missing packets, repeat a given packet once per missing 
    709                 ## second until there is a gap between 1 and 2 seconds, in which case 
    710                 ## produce a final duplicate packet at the mid-point between the packets 
    711                  
    712                 #if self.DEBUG: 
    713                         #print "INFO: Scrubbing Data" 
    714                  
    715                 #if source == None: 
    716                         #if self.parent == None: 
    717                                 #source = self 
    718                         #else: 
    719                                 #source = self.parent 
    720                  
    721                 #last_time = None 
    722                 #last_recorded_time = None 
    723                  
    724                 #output = {} 
    725                  
    726                 #csv_keys = csv.keys() 
    727                 #csv_keys.sort() 
    728                  
    729                 #for key in csv_keys: 
    730                          
    731                         #timestamp = key 
    732  
    733                         #if csv[key]['Attention'] == '': 
    734                                 #continue 
    735                          
    736                         #if last_time == None: 
    737                                 ## First entry in log 
    738                                 #last_time = timestamp 
    739                                 #last_recorded_time = timestamp 
    740                                 #output[key] = csv[key] 
    741                                 #continue 
    742                          
    743                         #else: 
    744                                  
    745                                 ##time_difference = timestamp - last_time 
    746                                 #time_difference = timestamp - last_recorded_time 
    747                                  
    748                                 #if (time_difference <= 1) and \ 
    749                                    #(time_difference >= PACKET_MINIMUM_TIME_DIFFERENCE_THRESHOLD): 
    750                                         ## Skip packets within the correct time threshold 
    751                                         #last_time = timestamp 
    752                                         #last_recorded_time = timestamp 
    753                                         #output[key] = csv[key] 
    754                                         #continue 
    755                                  
    756                                 #else: 
    757                                          
    758                                         #if self.DEBUG > 1: 
    759                                                 #print "time_difference:", 
    760                                                 #print time_difference 
    761                                                 #print "timestamp:", 
    762                                                 #print source.parseTimeStamp(timestamp)[-1].split(' ')[0] 
    763                                                 #print "last_time:", 
    764                                                 #print source.parseTimeStamp(last_time)[-1].split(' ')[0] 
    765                                                 #print "last_recorded_time:", 
    766                                                 #print source.parseTimeStamp(last_recorded_time)[-1].split(' ')[0] 
    767                                          
    768                                          
    769                                         #new_packet = csv[key].copy() 
    770                                          
    771                                         #if time_difference >= 2: 
    772                                                  
    773                                                 ###new_time = last_time + 1 
    774                                                 ##new_time = last_recorded_time + 1 
    775                                                  
    776                                                 #count = int(time_difference) 
    777                                                 #while count >= 1: 
    778                                                         #new_packet = csv[key].copy() 
    779                                                         #new_time = last_recorded_time + 1 
    780                                                         #(date, formatted_new_time) = source.parseTimeStamp(new_time, \ 
    781                                                          #truncate_time_zone=truncate_csv_timezone) 
    782                                                         #new_packet['Time'] = formatted_new_time 
    783                                                         #last_recorded_time = new_time 
    784                                                         #last_time = timestamp 
    785                                                         #output[new_time] = new_packet 
    786                                                         #count = count - 1 
    787                                                 #continue 
    788                                                  
    789                                         #elif time_difference < PACKET_MINIMUM_TIME_DIFFERENCE_THRESHOLD: 
    790                                                 ## Spread out "bunched up" packets 
    791                                                 ##new_time = last_time + 1 
    792                                                 #new_time = last_recorded_time + 1 
    793                                          
    794                                          
    795                                         #elif (time_difference < 2) and (time_difference > 1): 
    796                                                  
    797                                                 ##new_time = last_time + ((last_time - timestamp) / 2) 
    798                                                 ##new_time = last_recorded_time + ((last_recorded_time - timestamp) / 2) 
    799                                                 ##new_time = last_time + 1 
    800                                                 #new_time = last_recorded_time + 1 
    801                                          
    802                                          
    803                                         #(date, formatted_new_time) = source.parseTimeStamp(new_time, \ 
    804                                            #truncate_time_zone=truncate_csv_timezone) 
    805                                          
    806                                         #new_packet['Time'] = formatted_new_time 
    807                                          
    808                                         ##last_time = new_time 
    809                                         #last_recorded_time = new_time 
    810                                         #last_time = timestamp 
    811                                         #output[new_time] = new_packet 
    812                                          
    813                                         #if self.DEBUG > 1: 
    814                                                 #print "WARN: Scrubbing new packet:", 
    815                                                 #print new_packet 
    816                                                 #print 
    817                  
    818                  
    819                 #return(output) 
    820          
    821          
    822         ################################################################## 
    823          
    824541        def setPacketCount(self, value): 
    825542                 
Note: See TracChangeset for help on using the changeset viewer.