Ejemplo n.º 1
0
int PokeProxy::ev(int stat) const
{
    if (stat >= 0 && stat < evs().length()) {
        return evs()[stat];
    } else {
        return 0;
    }
}
Ejemplo n.º 2
0
tensor2D eigenVectors(const tensor2D& t)
{
    vector2D evals(eigenValues(t));

    tensor2D evs
    (
        eigenVector(t, evals.x()),
        eigenVector(t, evals.y())
    );

    return evs;
}
Ejemplo n.º 3
0
tensor eigenVectors(const symmTensor& t)
{
    vector evals(eigenValues(t));

    tensor evs
    (
        eigenVector(t, evals.x()),
        eigenVector(t, evals.y()),
        eigenVector(t, evals.z())
    );

    return evs;
}
Ejemplo n.º 4
0
int EpollDemultiplexer::wait_event(  std::map<Handle, EventHandler *>&  handlers,
                                int timeout )
{
    std::vector<struct epoll_event> evs(max_fd); 

    int num = epoll_wait( epoll_fd, &evs[0], max_fd, timeout );

    if ( num > 0 )
    {
        for ( int i = 0; i < num; ++i )
        {
            Handle handle =  evs[i].data.fd ;

            if ( EPOLLERR & evs[i].events )
            {
                (handlers[ handle ])->handle_error();
            }
            else
            {
                if ( EPOLLIN & evs[i].events )
                {
                    handlers[ handle ]->handle_read();
                }
                if ( EPOLLOUT & evs[i].events )
                {
                    handlers[ handle ]->handle_write();
                }
            }
        }
    }
    else if ( num < 0 )
    {
        printf("epoll_wait error %s\n", strerror(errno) ); 
    }

    return num;
}