Index: /trunk/libffado/src/dice/dice_avdevice.h =================================================================== --- /trunk/libffado/src/dice/dice_avdevice.h (revision 1651) +++ /trunk/libffado/src/dice/dice_avdevice.h (revision 1655) @@ -311,4 +311,7 @@ virtual NameVector getDestinationNames(); + virtual Control::CrossbarRouter::Groups getSources(); + virtual Control::CrossbarRouter::Groups getDestinations(); + virtual IntVector getDestinationsForSource(const int); virtual int getSourceForDestination(const int); Index: /trunk/libffado/src/dice/dice_eap.cpp =================================================================== --- /trunk/libffado/src/dice/dice_eap.cpp (revision 1653) +++ /trunk/libffado/src/dice/dice_eap.cpp (revision 1655) @@ -1229,4 +1229,18 @@ } +Control::CrossbarRouter::Groups +Device::EAP::Router::getSources() +{ + debugError("Device::EAP::Router::getSources() is not yet implemented!"); + return Control::CrossbarRouter::Groups(); +} + +Control::CrossbarRouter::Groups +Device::EAP::Router::getDestinations() +{ + debugError("Device::EAP::Router::getDestinations() is not yet implemented!"); + return Control::CrossbarRouter::Groups(); +} + Control::CrossbarRouter::IntVector Device::EAP::Router::getDestinationsForSource(const int srcid) Index: /trunk/libffado/src/libcontrol/CrossbarRouter.h =================================================================== --- /trunk/libffado/src/libcontrol/CrossbarRouter.h (revision 1653) +++ /trunk/libffado/src/libcontrol/CrossbarRouter.h (revision 1655) @@ -59,4 +59,11 @@ typedef std::vector PeakValues; + struct Group + { + std::string name; + int nbchannels; + }; + typedef std::vector Groups; + virtual std::string getSourceName(const int) = 0; virtual std::string getDestinationName(const int) = 0; @@ -66,4 +73,7 @@ virtual NameVector getSourceNames() = 0; virtual NameVector getDestinationNames() = 0; + + virtual Groups getSources() = 0; + virtual Groups getDestinations() = 0; virtual IntVector getDestinationsForSource(const int) = 0; Index: /trunk/libffado/support/dbus/controlserver.cpp =================================================================== --- /trunk/libffado/support/dbus/controlserver.cpp (revision 1652) +++ /trunk/libffado/support/dbus/controlserver.cpp (revision 1655) @@ -865,4 +865,16 @@ } +std::vector< DBus::Struct > +CrossbarRouter::getSources() +{ + return std::vector< DBus::Struct >(); +} + +std::vector< DBus::Struct > +CrossbarRouter::getDestinations() +{ + return std::vector< DBus::Struct >(); +} + std::vector< DBus::Int32 > CrossbarRouter::getDestinationsForSource(const DBus::Int32 &idx) Index: /trunk/libffado/support/dbus/control-interface.xml =================================================================== --- /trunk/libffado/support/dbus/control-interface.xml (revision 1652) +++ /trunk/libffado/support/dbus/control-interface.xml (revision 1655) @@ -224,4 +224,10 @@ + + + + + + Index: /trunk/libffado/support/dbus/controlserver.h =================================================================== --- /trunk/libffado/support/dbus/controlserver.h (revision 1652) +++ /trunk/libffado/support/dbus/controlserver.h (revision 1655) @@ -336,4 +336,7 @@ std::vector< DBus::String > getDestinationNames(); + std::vector< DBus::Struct > getSources(); + std::vector< DBus::Struct > getDestinations(); + std::vector< DBus::Int32 > getDestinationsForSource(const DBus::Int32 &); DBus::Int32 getSourceForDestination(const DBus::Int32 &);