Changeset 331 for branches

Show
Ignore:
Timestamp:
12/03/06 14:15:46 (17 years ago)
Author:
jwoithe
Message:

Add detection support for the Fireface-800. There is no other functionality at this stage.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • branches/libfreebob-2.0/src/devicemanager.cpp

    r265 r331  
    3131#include "bounce/bounce_avdevice.h" 
    3232#include "motu/motu_avdevice.h" 
     33#include "rme/rme_avdevice.h" 
    3334 
    3435#include <iostream> 
     
    4243#define MOTU_VENDOR_ID                   0x000001f2 
    4344 
     45// The vendor ID for RME devices 
     46#define RME_VENDOR_ID                    0x00000a35 
     47 
    4448using namespace std; 
    4549 
     
    5155    m_probeList.push_back( probeBeBoB ); 
    5256    m_probeList.push_back( probeMotu ); 
     57    m_probeList.push_back( probeRme ); 
    5358    m_probeList.push_back( probeBounce ); 
    5459} 
     
    227232} 
    228233 
     234IAvDevice* 
     235DeviceManager::probeRme(Ieee1394Service& service, ConfigRom& configRom, int id, int level) 
     236{ 
     237    IAvDevice* avDevice; 
     238 
     239    // Do a first-pass test to see if it's likely that this device is a RME 
     240    if (configRom.getUnitSpecifierId() != RME_VENDOR_ID) { 
     241        debugOutput( DEBUG_LEVEL_VERBOSE, "Not a RME device...\n"); 
     242        return NULL; 
     243    }         
     244 
     245    avDevice = new Rme::RmeDevice( service, id, level ); 
     246    if ( !avDevice ) { 
     247        return NULL; 
     248    } 
     249 
     250    // RME's discover() needs to differentiate between different models, so 
     251    // for now keep all probing code in there since that's how we had to  
     252    // do it for MOTU.  If RME turns out to be simpler we could move the 
     253    // logic into here. 
     254    if ( !avDevice->discover() ) { 
     255        debugOutput( DEBUG_LEVEL_VERBOSE, "Not a RME device...\n"); 
     256        delete avDevice; 
     257        return NULL; 
     258    } 
     259    debugOutput( DEBUG_LEVEL_VERBOSE, "RME device discovered...\n"); 
     260 
     261    return avDevice; 
     262} 
     263 
    229264bool 
    230265DeviceManager::isValidNode(int node) 
  • branches/libfreebob-2.0/src/devicemanager.h

    r262 r331  
    6464    static IAvDevice* probeBounce(Ieee1394Service& service, ConfigRom& configRom, int id, int level); 
    6565    static IAvDevice* probeMotu(Ieee1394Service& service, ConfigRom& configRom, int id, int level); 
     66    static IAvDevice* probeRme(Ieee1394Service& service, ConfigRom& configRom, int id, int level); 
    6667 
    6768protected: 
  • branches/libfreebob-2.0/src/Makefile.am

    r250 r331  
    3333        bebob_light/bebob_light_avplug.h                \ 
    3434        bounce/bounce_avdevice.h                        \ 
    35         motu/motu_avdevice.h                             
     35        motu/motu_avdevice.h                            \ 
     36        rme/rme_avdevice.h 
    3637#       bebob/bebob_avdevice.h                          \ 
    3738#       bebob/bebob_avdevice_subunit.h                  \ 
     
    4950        bebob_light/bebob_light_avplug.cpp              \ 
    5051        bounce/bounce_avdevice.cpp                      \ 
    51         motu/motu_avdevice.cpp 
     52        motu/motu_avdevice.cpp                          \ 
     53        rme/rme_avdevice.cpp 
     54 
    5255#       bebob/bebob_avdevice.cpp                        \ 
    5356#       bebob/bebob_avdevice_xml.cpp                    \