Example #1
0
void ConfigTool::writeConfig() const
{
    Global* global = Global::instance();
    global->setConfigFAttribute( Config::FATTR_VERSION, 1.2f );
    global->setWindowIAttribute( eq::server::Window::IATTR_HINT_FULLSCREEN,
                                 eq::fabric::ON );
    if( _mode != MODE_WALL )
    {
        global->setWindowIAttribute(eq::server::Window::IATTR_HINT_DOUBLEBUFFER,
                                    eq::fabric::OFF );
        global->setWindowIAttribute( eq::server::Window::IATTR_HINT_DRAWABLE,
                                     eq::fabric::PBUFFER );
    }
    if( _mode >= MODE_DB && _mode <= MODE_DB_STREAM )
        global->setWindowIAttribute( eq::server::Window::IATTR_PLANES_STENCIL,
                                     eq::fabric::ON );

    ServerPtr server = new eq::server::Server;
    const Strings nodeNames = readNodenames( _nodesFile );
    co::ConnectionDescriptionPtr desc = new ConnectionDescription;
    if( !nodeNames.empty( ))
        desc->setHostname( nodeNames.front( ));
    server->addConnectionDescription( desc );

    Config* config = new Config( server );
    _writeResources( config, nodeNames );
    _writeCompound( config );

    lunchbox::Log::instance( "", 0 )
        << lunchbox::disableHeader << global << *server << std::endl
        << lunchbox::enableHeader << lunchbox::disableFlush;
}