def guardar_estilos(self):
     encabezado = ['ID_ESTILO', 'ESTILO']
     datos = []
     for key in self.idEstilosDict:
         dato = {'ID_ESTILO': self.idEstilosDict[key], 'ESTILO': key}
         datos.append(dato)
     IOManager.write_csv(self.BDD_ESTILOS_RUTA, encabezado, datos)
 def guardar_huellas_digitales(self):
     encabezado = ['ID_CANCION', 'HUELLA_DIGITAL']
     datos = []
     for key in self.huellasDict:
         dato = {}
         dato['ID_CANCION'] = key
         dato['HUELLA_DIGITAL'] = self.huellasDict[key]
         datos.append(dato)
     IOManager.write_csv(self.BDD_HUELLAS_RUTA, encabezado, datos)
 def guardar_interpretes(self):
     encabezado = ['ID_INTERPRETE', 'INTERPRETE']
     datos = []
     for key in self.idInterpretesDict:
         dato = {}
         dato['ID_INTERPRETE'] = self.idInterpretesDict[key]
         dato['INTERPRETE'] = key
         datos.append(dato)
     IOManager.write_csv(self.BDD_INTERPRETES_RUTA, encabezado, datos)
 def guardar_canciones(self):
     encabezado = ['ID_CANCION', 'TITULO', 'ID_INTERPRETE', 'ID_ESTILO']
     datos = []
     for titulo, id_interprete in self.idCancionesDict:
         id_cancion, id_estilo = self.idCancionesDict[(titulo, id_interprete)]
         dato = {}
         dato['ID_CANCION'] = id_cancion
         dato['TITULO'] = titulo
         dato['ID_INTERPRETE'] = id_interprete
         dato['ID_ESTILO'] = id_estilo
         datos.append(dato)
     IOManager.write_csv(self.BDD_CANCIONES_RUTA, encabezado, datos)
    def cargar_huellas_desde_bdd(self):
        obtenerClave = lambda celda: int(celda['ID_CANCION'])
        obtenerValor = lambda celda: celda['HUELLA_DIGITAL']
        obtenerContadorId = lambda celda: 0

        datos, contador = IOManager.read_csv(self.BDD_HUELLAS_RUTA, obtenerClave, obtenerValor, obtenerContadorId)
        self.huellasDict = datos
    def cargar_interpretes_desde_bdd(self):
        obtenerClave = lambda celda: celda['INTERPRETE']
        obtenerValor = lambda celda: int(celda['ID_INTERPRETE'])
        obtenerContadorId = lambda celda: int(celda['ID_INTERPRETE'])

        datos, maxId = IOManager.read_csv(self.BDD_INTERPRETES_RUTA, obtenerClave, obtenerValor, obtenerContadorId)
        self.idInterpretesDict = datos
        self.idInterpretesCount = (maxId + 1) if (maxId > 0) else 0
    def cargar_canciones_desde_bdd(self):
        obtenerClave = lambda celda: (celda['TITULO'], int(celda['ID_INTERPRETE']))
        obtenerValor = lambda celda: (int(celda['ID_CANCION']), int(celda['ID_ESTILO']))
        obtenerContadorId = lambda celda: int(celda['ID_CANCION'])

        datos, maxId = IOManager.read_csv(self.BDD_CANCIONES_RUTA, obtenerClave, obtenerValor, obtenerContadorId)
        self.idCancionesDict = datos
        self.idCancionesCount = (maxId + 1) if (maxId > 0) else 0
    def cargar_estilos_desde_bdd(self):
        obtenerClave = lambda celda: celda['ESTILO']
        obtenerValor = lambda celda: int(celda['ID_ESTILO'])
        obtenerContadorId = lambda celda: int(celda['ID_ESTILO'])

        datos, maxId = IOManager.read_csv(self.BDD_ESTILOS_RUTA, obtenerClave, obtenerValor, obtenerContadorId)
        self.idEstilosDict = datos
        self.idEstilosCount = (maxId + 1) if (maxId > 0) else 0
Exemplo n.º 9
0
class Fan(Device):
	im=IOManager()
	def __init__(self,p):
		self.name="FAN"
		self.device_id=0
		self.sdk_version=1
		self.author="winxos"
		self.device_type="IO"
		self.io_binded=[p]	
		self.im.gpio_setmode(p,"OUTPUT")
		self.im.gpio_pwm_init(p,1000)
	def set_id(self,n):
		self.device_id=n
	def set_speed(self,s):
		try:
			self.im.gpio_pwm_set(self.io_binded[0],int(s[0]))
		except Exception,e:
			print e
 def renombrar_archivo(self, tema, interprete, estilo, dirName, arch):
     extension = arch[arch.rindex('.') : len(arch)]
     tema = StringUtils.convertir_a_estandard(tema)
     interprete = StringUtils.convertir_a_estandard(interprete)
     arch_estandard = interprete + " " + self.separador + " " + tema + extension
     IOManager.renombrar_archivo(dirName, arch, arch_estandard)
Exemplo n.º 11
0
 def __init__(self, filename):
     self.__io = IOManager()
     self.__load_items(filename)
     self.__take_input()
Exemplo n.º 12
0
class CashRegister(object):
    #Object for main interface
    def __init__(self, filename):
        self.__io = IOManager()
        self.__load_items(filename)
        self.__take_input()

    @property
    def items(self):
        return self.__items

    @items.setter
    def items(self, value):
        self.__items = value

    @property
    def state(self):
        return self.__state

    @state.setter
    def state(self, value):
        self.__state = value
        print(value)
        self.__io.blinkLight()#TODO CHANGE THIS TO ONLY WHEN WE WANT

    def __load_items(self, filename):
        self.state = State.loading
        
        self.__lookup = {}
        script_dir = os.path.dirname(__file__)
        file_path = os.path.join(script_dir, filename)
        with open(file_path) as itemFile:
            for line in itemFile:
                item = self.__parse(line)
                self.__lookup[item.id] = item
        self.state = State.waiting

    def __parse(self, line):
        strs = line.split(',')
        return Item(strs[0], strs[1], strs[2])

    def __take_input(self):
        self.state = State.waiting
        self.items = []
        while True: #loop for lifecycle, break when system shuts down or at other time when decided
            self.__read_button()
            if self.state == State.scanning:
                self.__scan_items()
            elif self.state == State.completed:
                self.__print_items()
                self.__cleanup()

    def __read_button(self):
        if self.__io.getButton():
            if self.state == State.waiting:
                self.state = State.scanning
            elif self.state == State.scanning or self.state == State.processing:
                self.state = State.completed

    def __scan_items(self):
        while self.state == State.scanning:
            scanStr = self.__io.getScan()
            if scanStr != "":
                self.state = State.processing
                item = self.__lookup[int(scanStr)]
                print(item.id)
                self.__add_item(item)
                self.state = State.scanning
            self.__read_button()

    def __add_item(self, item):
        self.items.append(item)
    def __print_items(self):
        self.state = State.printing
        self.__io.printReceipt(self.items)
        self.state = State.waiting
    def __cleanup(self):
        self.items.clear()
Exemplo n.º 13
0
    print("  COMO USAR:")
    print(
        "  dispatcher.py [processos] [arquivos]\n    Processos: Arquivo com os dados dos processos"
    )
    print(
        "    Arquivos: Arquivo com os dados do sistema de arquivos\n    (Insira o nome dos arquivos com extensão)"
    )
    exit()
else:
    FNAME_process = sys.argv[1]
    FNAME_files = sys.argv[2]

# Inicializa os recursos do sistema
dsptc = Dispatcher()
fsmgr = FileManager.FileSystem()
iomgr = IOManager.IOManager()

# Inicializa o sistema
dsptc.Boot(FNAME_process)
fsmgr.InitializeFS(FNAME_files)

# Processa as operações de arquivo usando a fila inicial de processos
fsmgr.FileOperations(dsptc.input_queue)

print("processos>>>", dsptc.input_queue)

# Fluxo principal, escalonamento de processos
dsptc_exit = cons.RESULT_SUCCESS
while dsptc_exit != cons.ERR_NO_PROCESS:
    # Procura pelo sinal de IO concluída
    iomgr.GetIOResults(dsptc.input_queue)