Esempio n. 1
0
def CSVExportTIMD(comp, name, keys=[]):
    calculator = Math.Calculator(comp)
    excluded = [
        'calculatedData', 'highShotTimesForBoilerAuto',
        'highShotTimesForBoilerTele'
    ]
    with open('./EXPORT-' + name + '.csv', 'w') as f:
        defaultKeys = [
            k for k in TeamInMatchData().__dict__.keys()
            if k not in excluded and k in keys
        ]
        defaultKeys += [
            k for k in TeamInMatchData().calculatedData.__dict__.keys()
            if k in keys
        ]
        defaultKeys = sorted(
            defaultKeys,
            key=lambda k:
            (k != 'matchNumber' and k != 'teamNumber', k.lower()))
        writer = csv.DictWriter(f, fieldnames=defaultKeys)
        writer.writeheader()
        comp.updateTIMDsFromFirebase()
        for timd in comp.TIMDs:
            tDict = timd.__dict__
            tDict.update(timd.calculatedData.__dict__)
            keys = sorted(
                defaultKeys,
                key=lambda k:
                (k != 'matchNumber' and k != 'teamNumber', k.lower()))
            writer.writerow({k: tDict[k] for k in keys})
Esempio n. 2
0
def CSVExportTeam(comp, name, keys=[]):
    calculator = Math.Calculator(comp)
    excluded = [
        'calculatedData', 'name', 'imageKeys', 'pitAllImageURLs',
        'pitSelectedImageName'
    ]
    with open('./EXPORT-' + name + '.csv', 'w') as f:
        defaultKeys = [
            k for k in Team().__dict__.keys()
            if k not in excluded and k in keys
        ]
        defaultKeys += [
            k for k in Team().calculatedData.__dict__.keys() if k in keys
        ]
        defaultKeys = sorted(defaultKeys,
                             key=lambda k: (k != 'number', k.lower()))
        writer = csv.DictWriter(f, fieldnames=defaultKeys)
        writer.writeheader()
        for team in comp.teams:
            team.numMatchesPlayed = len(
                calculator.su.getCompletedMatchesForTeam(team))
            tDict = team.__dict__
            tDict.update(team.calculatedData.__dict__)
            keys = sorted(defaultKeys,
                          key=lambda k: (k != 'number', k.lower()))
            writer.writerow({k: tDict[k] for k in keys})
Esempio n. 3
0
def CSVExportMatch(comp, name, keys=[]):
    calculator = Math.Calculator(comp)
    excluded = ['calculatedData', 'name']
    with open('./EXPORT-' + name + '.csv', 'w') as f:
        defaultKeys = [
            k for k in Match().__dict__.keys()
            if k not in excluded and k in keys
        ]
        defaultKeys += [
            k for k in Match().calculatedData.__dict__.keys() if k in keys
        ]
        defaultKeys = sorted(defaultKeys,
                             key=lambda k: (k != 'number', k.lower()))
        writer = csv.DictWriter(f, fieldnames=defaultKeys)
        writer.writeheader()
        for match in comp.matches:
            tDict = match.__dict__
            tDict.update(match.calculatedData.__dict__)
            keys = sorted(defaultKeys,
                          key=lambda k: (k != 'number', k.lower()))
            writer.writerow({k: tDict[k] for k in keys})
Esempio n. 4
0
#Last Updated: 3/15/18
from CSVExporter import *
from scoutRotator import *
from SPR import ScoutPrecision
import DataModel
import firebaseCommunicator
import traceback
import numpy as np
import Math
from pydub import AudioSegment
from pydub.playback import play

PBC = firebaseCommunicator.PyrebaseCommunicator()
fb = PBC.firebase
comp = DataModel.Competition(PBC)
calc = Math.Calculator(comp)
spr = ScoutPrecision()

while (True):
    comp.updateTeamsAndMatchesFromFirebase()
    comp.updateTIMDsFromFirebase()
    cmd = raw_input('>>> ').split()
    if cmd[0] == 'exp':
        try:
            if cmd[1] == 'timd':
                if cmd[2] == '-all':
                    CSVExportTIMDALL(comp)
                    comp.PBC.sendExport('EXPORT-TIMDALL.csv')
                elif cmd[2] == '-other':
                    print('')
            elif cmd[1] == 'team':