Changeset 1022

Show
Ignore:
Timestamp:
04/24/08 11:46:43 (13 years ago)
Author:
ppalmers
Message:

add ListDevices? operation

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/libffado/tests/test-ffado.cpp

    r1018 r1022  
    188188} 
    189189 
     190void  
     191printDeviceList(unsigned int port) 
     192{ 
     193    Ieee1394Service service; 
     194    // switch off all messages since they mess up the list 
     195    service.setVerboseLevel(0); 
     196    if ( !service.initialize( port ) ) { 
     197        printf("Could not initialize IEEE 1394 service on port %d\n", port); 
     198        exit(-1); 
     199    } 
     200 
     201    printf("=== 1394 PORT %d ===\n", port); 
     202    printf("  Node id  GUID                  VendorId     ModelId   Vendor - Model\n"); 
     203    for (int i = 0; i < service.getNodeCount(); i++) { 
     204        ConfigRom crom(service, i); 
     205        if (!crom.initialize()) 
     206            break; 
     207 
     208        printf("  %2d       0x%s  0x%08X  0x%08X   %s - %s\n", 
     209               i, crom.getGuidString().c_str(), 
     210               crom.getNodeVendorId(), crom.getModelId(), 
     211               crom.getVendorName().c_str(), 
     212               crom.getModelName().c_str()); 
     213    } 
     214} 
     215 
     216 
    190217int 
    191218main( int argc, char **argv ) 
     
    240267        delete m_deviceManager; 
    241268        return exitfunction(0); 
     269    } else if ( strcmp( arguments.args[0], "ListDevices" ) == 0 ) { 
     270        unsigned int nb_ports = Ieee1394Service::detectNbPorts(); 
     271        for (unsigned int i=0;i<nb_ports;i++) { 
     272            printDeviceList(i); 
     273        } 
    242274    } else if ( strcmp( arguments.args[0], "SetSamplerate" ) == 0 ) { 
    243275        char* tail;