Changeset 826

Show
Ignore:
Timestamp:
01/06/08 11:25:49 (15 years ago)
Author:
wagi
Message:

add feature to disable avc model cache use

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/libffado/src/devicemanager.cpp

    r807 r826  
    212212 
    213213bool 
    214 DeviceManager::discover(
     214DeviceManager::discover( bool useCache
    215215{ 
    216216    bool slaveMode=false; 
     
    298298                    avDevice->setVerboseLevel( getDebugLevel() ); 
    299299                    bool isFromCache = false; 
    300                     if ( avDevice->loadFromCache() ) { 
     300                    if ( useCache && avDevice->loadFromCache() ) { 
    301301                        debugOutput( DEBUG_LEVEL_VERBOSE, "could load from cache\n" ); 
    302302                        isFromCache = true; 
  • trunk/libffado/src/devicemanager.h

    r777 r826  
    7272    bool isSpecStringValid(std::string s); 
    7373 
    74     bool discover(); 
     74    bool discover(bool userCache=true); 
    7575    bool initStreaming(); 
    7676    bool prepareStreaming(); 
  • trunk/libffado/tests/test-ffado.cpp

    r795 r826  
    7171    long int verbose; 
    7272    long int port; 
     73    long int use_cache; 
    7374    long int node_id; 
    7475    long int node_id_set; 
     
    8283 
    8384    {"verbose",  'v', "level",    0,  "Produce verbose output" }, 
     85    {"cache",    'c', "enable",   0,  "Use AVC model cache (default=enabled)" }, 
    8486 
    8587 
     
    113115        } 
    114116        break; 
     117    case 'c': 
     118        if (arg) { 
     119            arguments->use_cache = strtol( arg, &tail, 0 ); 
     120            if ( errno ) { 
     121                fprintf( stderr,  "Could not parse 'cache' argument\n" ); 
     122                return ARGP_ERR_UNKNOWN; 
     123            } 
     124        } 
     125        break;       
    115126    case 'p': 
    116127        if (arg) { 
     
    179190    arguments.silent      = 0; 
    180191    arguments.verbose     = 0; 
     192    arguments.use_cache   = 1; 
    181193    arguments.port        = 0; 
    182194    arguments.node_id     = 0; 
     
    214226            m_deviceManager->setVerboseLevel(arguments.verbose); 
    215227        } 
    216         if ( !m_deviceManager->discover() ) { 
     228        if ( !m_deviceManager->discover(arguments.use_cache) ) { 
    217229            fprintf( stderr, "Could not discover devices\n" ); 
    218230            delete m_deviceManager; 
     
    245257            m_deviceManager->setVerboseLevel(arguments.verbose); 
    246258        } 
    247         if ( !m_deviceManager->discover() ) { 
     259        if ( !m_deviceManager->discover(arguments.use_cache) ) { 
    248260            fprintf( stderr, "Could not discover devices\n" ); 
    249261            delete m_deviceManager; 
     
    302314            m_deviceManager->setVerboseLevel(arguments.verbose); 
    303315        } 
    304         if ( !m_deviceManager->discover() ) { 
     316        if ( !m_deviceManager->discover(arguments.use_cache) ) { 
    305317            fprintf( stderr, "Could not discover devices\n" ); 
    306318            delete m_deviceManager;