]> git.sesse.net Git - nageru/blobdiff - alsa_input.h
Make it possible to load/save input mappings.
[nageru] / alsa_input.h
index bac13beca366a3884a63fe2c1e32263f46aba17e..3b98885677832ec6f1763555fbb4f36ada45e429 100644 (file)
@@ -22,6 +22,7 @@
 #include "timebase.h"
 
 class ALSAPool;
+class DeviceSpecProto;
 
 class ALSAInput {
 public:
@@ -152,6 +153,15 @@ public:
        // EMPTY or DEAD state. Only for ALSAInput and for internal use.
        void free_card(unsigned index);
 
+       // Create a new card, mark it immediately as DEAD and hold it.
+       // Returns the new index.
+       unsigned create_dead_card(const std::string &name, const std::string &info, unsigned num_channels);
+
+       // Make a protobuf representation of the given card, so that it can be
+       // matched against at a later stage. For AudioMixer only.
+       // The given card must be held.
+       void serialize_device(unsigned index, DeviceSpecProto *serialized);
+
 private:
        mutable std::mutex mu;
        std::vector<Device> devices;  // Under mu.