Show
Ignore:
Timestamp:
10/14/07 10:19:22 (16 years ago)
Author:
ppalmers
Message:

- Adapt the phase 88 mixer control application to the new DBUS control interface

Files:

Legend:

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

    r560 r644  
    6161 
    6262ConfigRom::ConfigRom( Ieee1394Service& ieee1394service, fb_nodeid_t nodeId ) 
    63     : OscNode("ConfigRom") 
     63    : Control::Element("ConfigRom") 
    6464    , m_1394Service( &ieee1394service ) 
    6565    , m_nodeId( nodeId ) 
     
    8888 
    8989ConfigRom::ConfigRom() 
    90     : OscNode("ConfigRom") 
     90    : Control::Element("ConfigRom") 
    9191    , m_1394Service( 0 ) 
    9292    , m_nodeId( -1 ) 
     
    596596    return true; 
    597597} 
    598  
    599 OSC::OscResponse 
    600 ConfigRom::processOscMessage(OSC::OscMessage *m) { 
    601     OSC::OscResponse r=OSC::OscResponse(OSC::OscResponse::eUnhandled); 
    602  
    603     unsigned int nbArgs=m->nbArguments(); 
    604     if (nbArgs>=1) { 
    605         OSC::OscArgument arg0=m->getArgument(0); 
    606         if(arg0.isString()) { // commands 
    607             string cmd=arg0.getString(); 
    608  
    609             debugOutput( DEBUG_LEVEL_VERBOSE, "(%p) CMD? %s\n", this, cmd.c_str()); 
    610             if(cmd == "params") { 
    611                 debugOutput( DEBUG_LEVEL_VERBOSE, "Listing node params...\n"); 
    612                 OSC::OscMessage& rm=r.getMessage(); 
    613                 rm.addArgument("GUID"); 
    614                 rm.addArgument("VendorName"); 
    615                 rm.addArgument("ModelName"); 
    616                 r.setType(OSC::OscResponse::eMessage); 
    617             } 
    618             if(cmd == "get") { 
    619                 if(nbArgs != 2) { 
    620                     debugError("Erronous get command received, wrong nb of arguments\n"); 
    621                     m->print(); 
    622                 } else { 
    623                     OSC::OscArgument arg1=m->getArgument(1); 
    624                     if(arg1.isString()) { // commands 
    625                         string target=arg1.getString(); 
    626                         OSC::OscMessage& rm=r.getMessage(); 
    627                         if(target == "GUID") { 
    628                             // FIXME: this will only return the lower 32 bits 
    629                             rm.addArgument((int64_t)getGuid()); 
    630                         } else if(target == "VendorName") { 
    631                             rm.addArgument(getVendorName()); 
    632                         } else if(target == "ModelName") { 
    633                             rm.addArgument(getModelName()); 
    634                         } else { 
    635                             debugError("Erronous get command received, non-existant target\n"); 
    636                             m->print(); 
    637                         } 
    638                         r.setType(OSC::OscResponse::eMessage); 
    639                     } else { 
    640                         debugError("Erronous get command received, wrong argument type\n"); 
    641                         m->print(); 
    642                     } 
    643                 } 
    644             } 
    645         } 
    646     } 
    647  
    648     return r; 
    649  
    650 } 
  • trunk/libffado/src/libieee1394/configrom.h

    r560 r644  
    3333#include "debugmodule/debugmodule.h" 
    3434 
    35 #include "libosc/OscNode.h" 
     35#include "libcontrol/Element.h" 
    3636 
    3737#include <string> 
     
    4040 
    4141class ConfigRom 
    42     : public OSC::OscNode 
     42    : public Control::Element 
    4343{ 
    4444 public: 
     
    5757 
    5858    const unsigned int getModelId() const; 
     59    // FIXME: isn't this the same as getNodeVendorId? 
    5960    const unsigned int getVendorId() const; 
    6061    const unsigned int getUnitSpecifierId() const; 
     
    136137    struct csr1212_csr*    m_csr; 
    137138 
    138 protected: // OSC handling 
    139     OSC::OscResponse processOscMessage(OSC::OscMessage *m); 
    140  
    141139private: 
    142140    ConfigRom( const ConfigRom& ); // do not allow copy ctor