예제 #1
0
bool Pipe::configExit()
{
    _unmapData();

    if( _renderer )
    {
        getRendererImpl()->setPipe( 0 );
        getApplication()->destroyRenderer( _renderer );
    }
    _renderer = 0;

    return eq::Pipe::configExit();
}
예제 #2
0
bool Window::configExitGL()
{
    Renderer* rendererImpl = getRendererImpl();
    rendererImpl->setWindow( this );
    seq::Renderer* const renderer = getRenderer();
    const bool last = !getObjectManager()->isShared();

    bool ret = renderer->exitContext();
    if( last && !renderer->exit( ))
        ret = false;

    rendererImpl->setWindow( 0 );
    return ret;
}
예제 #3
0
bool Window::configInitGL( const uint128_t& initID )
{
    Renderer* rendererImpl = getRendererImpl();
    rendererImpl->setWindow( this );

    co::Object* initData = getConfig()->getInitData();
    seq::Renderer* const renderer = getRenderer();
    const bool first = !getObjectManager()->isShared();

    if( first && !renderer->init( initData ))
    {
        rendererImpl->setWindow( 0 );
        return false;
    }
    const bool ret = renderer->initContext( initData );

    rendererImpl->setWindow( 0 );
    return ret;
}
예제 #4
0
bool Pipe::configInit( const uint128_t& initID )
{
    if( !eq::Pipe::configInit( initID ))
        return false;

    LBASSERT( !_renderer );
    _renderer = getApplication()->createRenderer();
    if( !_renderer )
    {
        LBASSERT( _renderer );
        setError( ERROR_SEQUEL_CREATERENDERER_FAILED );
        return false;
    }
    getRendererImpl()->setPipe( this );

    if( _mapData( initID ))
        return true;

    setError( ERROR_SEQUEL_MAPOBJECT_FAILED );
    return false;
}
예제 #5
0
void Channel::frameFinish(const uint128_t& frameID, const uint32_t frameNumber)
{
    getRendererImpl()->setChannel(0);
    eq::Channel::frameFinish(frameID, frameNumber);
}
예제 #6
0
void Channel::frameStart(const uint128_t& frameID, const uint32_t frameNumber)
{
    getRendererImpl()->setChannel(this);
    eq::Channel::frameStart(frameID, frameNumber);
}
예제 #7
0
void Window::frameFinish( const uint128_t& frameID, const uint32_t frameNumber)
{
    getRendererImpl()->setWindow( 0 );
    eq::Window::frameFinish( frameID, frameNumber );
}
예제 #8
0
void Window::frameStart( const uint128_t& frameID, const uint32_t frameNumber )
{
    getRendererImpl()->setWindow( this );
    eq::Window::frameStart( frameID, frameNumber );
}