コード例 #1
0
/*
** ===================================================================
**     Method      :  Adq_Start
**    Description  :  Empieza la adquisicion (si es que la memoria no
**                    se encuentra en full)
** ===================================================================
*/
void Registrador::start(){
  if(getEstado() == FULL){
    return;
  }
  if(getEstado() != SI){        
    setEstado(SI);
  }
}
コード例 #2
0
ファイル: main.c プロジェクト: gizbor/TP1
/** Descripcion: imprime el tablero en forma de matriz (ver MODO_DEBUG) */
void imprimirTablero(int n, tcelda* tablero){
    int i,j;
    for (i=0; i<n; i++){
        printf("[");
        for (j=0; j< n; j++)
            printf("%c ", getEstado(*tablero++));
        printf("]\n");
    }
}
コード例 #3
0
ファイル: main.c プロジェクト: gizbor/TP1
/** Descripcion: devueve el estado de la celda (fila, columna)
de acuerdo a las reglas suministradas por el enunciado del tp.
*/
testado analizarEstado(int n, int contador_vivos, int fila, \
int columna, tcelda* tablero){
    testado estado = getEstado(*getCelda(n, fila, columna, tablero));
    if (estado==VIVO && ((contador_vivos==3 || contador_vivos==2)))
       return VIVO;
    if (estado==MUERTO && contador_vivos==3)
       return VIVO;
return MUERTO;
}
コード例 #4
0
ファイル: main.c プロジェクト: gizbor/TP1
/** Descripcion: devuelve 0 si el vecino "vecino" de la celda (fila, columna)
esta "vivo" actualmente, o 1 en caso contrario.
Vecinos:
1  2  3
4 (0) 5
6  7  8
Donde (0) es (fila, columna) pasado por parametro.
*/
int estaVivo(int n, int vecino, int fila, int columna, tcelda* tablero){
    static int j_transform[8]={ -1, 0, 1, -1, 1, -1, 0, 1 }, j;
    static int i_transform[8]={ -1, -1, -1, 0, 0, 1, 1, 1 }, i;

   i= (((i_transform[vecino-1]+fila) % n) + n) % n;
   j= (((j_transform[vecino-1]+columna) % n) + n) % n;
   if (getEstado(*getCelda(n, i, j, tablero))==VIVO)
      return 0;
return 1;
}
コード例 #5
0
EspacioComplementario EspacioComplementarioDAO::get(std::string nombre)
{
    EspacioComplementario espacio;
    try{
    dataBase->resultset=dataBase->statement->executeQuery("SELECT * FROM Espacio E, EspacioComplementario D WHERE D.idEspacioComplementario='" +nombre +
                                                          "' AND E.nombre = D.idEspacioComplementario");
    while(dataBase->resultset->next()){
        espacio.nombre = dataBase->resultset->getString(1);
        espacio.descripcion = dataBase->resultset->getString(2);
        double num = atof( dataBase->resultset->getString(3).c_str() );
        espacio.precioPorhora = num;
        espacio.capacidad = std::stoi(dataBase->resultset->getString(4).c_str());
        espacio.estado = getEstado(dataBase->resultset->getString(5));
        espacio.horario = getHorario(dataBase->resultset->getString(6), dataBase->resultset->getString(7));
        espacio.tipo.nombre=dataBase->resultset->getString(9);
    }
    }catch(...){
        throw std::string("No  se puede obtener espacio complementario");
    }
    return espacio;
}
コード例 #6
0
ファイル: Passageiro.c プロジェクト: gorobaum/gorobaumhome
/*Funcao importante usada internamente. Ela executa um update logico de um passageiro.*/
void updatePassageiro(Entity ent, double deltaTime)
{
	int estado, estadoAntigo;
	Vetor v;

    atualizaPosicao(ent, deltaTime);  /*atualizamos nossa posicao de acordo com a velocidade e variacao do tempo.*/

    /*Se nao estivermos colidindo podemos tentar mudar nossa direcao de movimento de acordo */
    if ( !getEstaColidindo(ent) )
    {
        v = getVelocidade(ent);
        estadoAntigo = getEstado(v);

        if (estadoAntigo != -1)
        {
            /*E tentamos mudar nosso estado de acordo com uma cadeia de markov...*/
            estado = markovProximoEstado(estadoAntigo, 8, markovTransicao);
            if (estado != estadoAntigo)
                setEstado(estado, v);
        }
    }
}
コード例 #7
0
ファイル: main.c プロジェクト: gizbor/TP1
/** Descripcion: imprime la matriz en el mismo formato que los
valores de inicializacion. */
void imprimirEnFormatoEntrada(int n, tcelda* tablero){
    int i;
    for (i=0; i<(n*n)-1; i++)
        printf("%c,", getEstado(*tablero++));
    printf("%c\n", getEstado(*tablero));
}
コード例 #8
0
/*
** ===================================================================
**     Method      :  Adq_Stop 
**    Description  :  Detiene la adquisicion
** ===================================================================
*/
void Registrador::stop(){
  if( getEstado() == SI ){
    setEstado(NO);
  }
}