def nuevoAnalisis(self, fenM2, infoDispatch): alm = PantallaParamAnalisis.paramAnalisis(self.pantalla, VarGen.configuracion, False, siTodosMotores=True) if alm is None: return configuracion = VarGen.configuracion confMotor = configuracion.buscaMotor(alm.motor) confMotor.actMultiPV(alm.multiPV) xmotor = self.procesador.creaGestorMotor(confMotor, alm.tiempo, alm.depth, siMultiPV=True) me = QTUtil2.analizando(self.pantalla) mrm = xmotor.analiza(fenM2 + " 0 1") mrm.tiempo = alm.tiempo / 1000.0 mrm.rotulo = ("%s %.0f\"" % (mrm.nombre, mrm.tiempo)) xmotor.terminar() me.final() self.dbAnalisis.nuevo(fenM2, mrm) self.dispatchAnalisis(infoDispatch)
def crear(self): alm = PantallaParamAnalisis.paramAnalisis(self, VarGen.configuracion, False, siTodosMotores=True) if alm: um = self.mAnalisis.creaMuestra(self, alm) self.crearMuestra(um)
def nuevoAnalisis(self, lm): fen = lm.partidaBase.ultPosicion.fen() alm = PantallaParamAnalisis.paramAnalisis(self, VarGen.configuracion, False, siTodosMotores=True) if alm is None: return confMotor = VarGen.configuracion.buscaMotor(alm.motor) confMotor.actMultiPV(alm.multiPV) # confMotor.debug( "rival" ) xmotor = self.procesador.creaGestorMotor(confMotor, alm.tiempo, alm.depth, siMultiPV=True) me = QTUtil2.analizando(self) mrm = xmotor.analiza(fen) mrm.tiempo = alm.tiempo / 1000.0 mrm.depth = alm.depth tipo = "%s=%d" % (_("Depth"), mrm.depth) if mrm.depth else "%.0f\"" % mrm.tiempo mrm.rotulo = ("%s %s" % (mrm.nombre, tipo)) xmotor.terminar() me.final() lm.liAnalisis.append(mrm) self.ponAnalisis(lm, len(lm.liAnalisis) - 1)
def masivo(self): liSeleccionadas = self.grid.recnosSeleccionados() nSeleccionadas = len(liSeleccionadas) alm = PantallaParamAnalisis.paramAnalisisMasivo( self, self.gestor.configuracion, nSeleccionadas > 1) if alm: if alm.siVariosSeleccionados: nregs = nSeleccionadas else: nregs = self.dbf.reccount() tmpBP = QTUtil2.BarraProgreso2(self, _("Mass analysis"), formato2="%p%") tmpBP.ponTotal(1, nregs) tmpBP.ponRotulo(1, _("Game")) tmpBP.ponRotulo(2, _("Moves")) tmpBP.mostrar() import Code.Analisis ap = Code.Analisis.AnalizaPartida(self.gestor.procesador, alm, True) for n in range(nregs): if tmpBP.siCancelado(): break tmpBP.pon(1, n + 1) if alm.siVariosSeleccionados: n = liSeleccionadas[n] self.dbf.goto(n) self.grid.goto(n, 0) jugadas = self.dbf.leeOtroCampo(n, "PGN") pgn = PGN.UnPGN() pgn.leeTexto(jugadas) ap.xprocesa(pgn.dic, pgn.partida, tmpBP, jugadas) if not tmpBP.siCancelado(): ap.terminar(True) liCreados = [] liNoCreados = [] if alm.tacticblunders: if ap.siTacticBlunders: liCreados.append(alm.tacticblunders) else: liNoCreados.append(alm.tacticblunders) for x in (alm.pgnblunders, alm.fnsbrilliancies, alm.pgnbrilliancies): if x: if Util.existeFichero(x): liCreados.append(x) else: liNoCreados.append(x) if alm.bmtblunders: if ap.siBMTblunders: liCreados.append(alm.bmtblunders) else: liNoCreados.append(alm.bmtblunders) if alm.bmtbrilliancies: if ap.siBMTbrilliancies: liCreados.append(alm.bmtbrilliancies) else: liNoCreados.append(alm.bmtbrilliancies) mensajeEntrenamientos(self, liCreados, liNoCreados) else: ap.terminar(False) tmpBP.cerrar()
def masivo(self): liSeleccionadas = self.grid.recnosSeleccionados() nSeleccionadas = len(liSeleccionadas) alm = PantallaParamAnalisis.paramAnalisisMasivo(self, self.gestor.configuracion, nSeleccionadas > 1) if alm: if alm.siVariosSeleccionados: nregs = nSeleccionadas else: nregs = self.dbf.reccount() tmpBP = QTUtil2.BarraProgreso2(self, _("Mass analysis"), formato2="%p%") tmpBP.ponTotal(1, nregs) tmpBP.ponRotulo(1, _("Game")) tmpBP.ponRotulo(2, _("Moves")) tmpBP.mostrar() import Code.Analisis ap = Code.Analisis.AnalizaPartida(self.gestor.procesador, alm, True) for n in range(nregs): if tmpBP.siCancelado(): break tmpBP.pon(1, n + 1) if alm.siVariosSeleccionados: n = liSeleccionadas[n] self.dbf.goto(n) self.grid.goto(n, 0) jugadas = self.dbf.leeOtroCampo(n, "PGN") pgn = PGN.UnPGN() pgn.leeTexto(jugadas) ap.xprocesa(pgn.dic, pgn.partida, tmpBP, jugadas) if not tmpBP.siCancelado(): ap.terminar(True) liCreados = [] liNoCreados = [] if alm.tacticblunders: if ap.siTacticBlunders: liCreados.append(alm.tacticblunders) else: liNoCreados.append(alm.tacticblunders) for x in ( alm.pgnblunders, alm.fnsbrilliancies, alm.pgnbrilliancies): if x: if Util.existeFichero(x): liCreados.append(x) else: liNoCreados.append(x) if alm.bmtblunders: if ap.siBMTblunders: liCreados.append(alm.bmtblunders) else: liNoCreados.append(alm.bmtblunders) if alm.bmtbrilliancies: if ap.siBMTbrilliancies: liCreados.append(alm.bmtbrilliancies) else: liNoCreados.append(alm.bmtbrilliancies) mensajeEntrenamientos(self, liCreados, liNoCreados) else: ap.terminar(False) tmpBP.cerrar()
def analizaPartida(gestor): partida = gestor.partida procesador = gestor.procesador pantalla = gestor.pantalla pgn = gestor.pgn alm = PantallaParamAnalisis.paramAnalisis(pantalla, procesador.configuracion, True) if alm is None: return liJugadas = [] lni = Util.ListaNumerosImpresion(alm.jugadas) numJugada = int(partida.primeraJugada()) siBlancas = not partida.siEmpiezaConNegras for nRaw in range(partida.numJugadas()): siGrabar = lni.siEsta(numJugada) if siGrabar: if siBlancas: if not alm.blancas: siGrabar = False elif not alm.negras: siGrabar = False if siGrabar: liJugadas.append(nRaw) siBlancas = not siBlancas if siBlancas: numJugada += 1 mensaje = _("Analyzing the move....") numJugadas = len(liJugadas) tmpBP = QTUtil2.BarraProgreso(pantalla, _("Analysis"), mensaje, numJugadas).mostrarAD() ap = AnalizaPartida(procesador, alm, False, liJugadas) def dispatchBP(pos, ntotal, njg): tmpBP.mensaje(mensaje + " %d/%d" % (pos + 1, ntotal)) jg = partida.jugada(njg) gestor.ponPosicion(jg.posicion) gestor.pantalla.pgnColocate(njg / 2, (njg + 1) % 2) gestor.tablero.ponFlechaSC(jg.desde, jg.hasta) gestor.ponVista() ap.dispatchBP(dispatchBP) ap.xprocesa(pgn.dicCabeceraActual(), partida, tmpBP, pgn.actual()) notCanceled = not tmpBP.siCancelado() ap.terminar(notCanceled) if notCanceled: liCreados = [] liNoCreados = [] if alm.tacticblunders: if ap.siTacticBlunders: liCreados.append(alm.tacticblunders) else: liNoCreados.append(alm.tacticblunders) for x in (alm.pgnblunders, alm.fnsbrilliancies, alm.pgnbrilliancies): if x: if Util.existeFichero(x): liCreados.append(x) else: liNoCreados.append(x) if alm.bmtblunders: if ap.siBMTblunders: liCreados.append(alm.bmtblunders) else: liNoCreados.append(alm.bmtblunders) if alm.bmtbrilliancies: if ap.siBMTbrilliancies: liCreados.append(alm.bmtbrilliancies) else: liNoCreados.append(alm.bmtbrilliancies) if liCreados or liNoCreados: PantallaPGN.mensajeEntrenamientos(pantalla, liCreados, liNoCreados) tmpBP.cerrar() gestor.ponteAlFinal() if notCanceled: if alm.showGraphs: gestor.showAnalisis()
def analizaPartida(gestor): partida = gestor.partida procesador = gestor.procesador pantalla = gestor.pantalla pgn = gestor.pgn alm = PantallaParamAnalisis.paramAnalisis(pantalla, procesador.configuracion, True) if alm is None: return liJugadas = [] lni = Util.ListaNumerosImpresion(alm.jugadas) numJugada = int(partida.primeraJugada()) siBlancas = not partida.siEmpiezaConNegras for nRaw in range(partida.numJugadas()): siGrabar = lni.siEsta(numJugada) if siGrabar: if siBlancas: if not alm.blancas: siGrabar = False elif not alm.negras: siGrabar = False if siGrabar: liJugadas.append(nRaw) siBlancas = not siBlancas if siBlancas: numJugada += 1 mensaje = _("Analyzing the move....") numJugadas = len(liJugadas) tmpBP = QTUtil2.BarraProgreso(pantalla, _("Analysis"), mensaje, numJugadas).mostrarAD() ap = AnalizaPartida(procesador, alm, False, liJugadas) def dispatchBP(pos, ntotal, njg): tmpBP.mensaje(mensaje + " %d/%d" % ( pos + 1, ntotal)) jg = partida.liJugadas[njg] gestor.ponPosicion(jg.posicion) gestor.pantalla.pgnColocate(njg / 2, (njg + 1) % 2) gestor.tablero.ponFlechaSC(jg.desde, jg.hasta) gestor.ponVista() ap.dispatchBP(dispatchBP) ap.xprocesa(pgn.dicCabeceraActual(), partida, tmpBP, pgn.actual()) notCanceled = not tmpBP.siCancelado() ap.terminar(notCanceled) if notCanceled: liCreados = [] liNoCreados = [] if alm.tacticblunders: if ap.siTacticBlunders: liCreados.append(alm.tacticblunders) else: liNoCreados.append(alm.tacticblunders) for x in (alm.pgnblunders, alm.fnsbrilliancies, alm.pgnbrilliancies): if x: if Util.existeFichero(x): liCreados.append(x) else: liNoCreados.append(x) if alm.bmtblunders: if ap.siBMTblunders: liCreados.append(alm.bmtblunders) else: liNoCreados.append(alm.bmtblunders) if alm.bmtbrilliancies: if ap.siBMTbrilliancies: liCreados.append(alm.bmtbrilliancies) else: liNoCreados.append(alm.bmtbrilliancies) if liCreados or liNoCreados: PantallaPGN.mensajeEntrenamientos(pantalla, liCreados, liNoCreados) tmpBP.cerrar() gestor.ponteAlFinal() if notCanceled: if alm.showGraphs: gestor.showAnalisis()