Hand-apply 2ee558ec90623b570360e8e55c918b5bb37f9aac from master; various snapping...
[dcpomatic.git] / src / lib / audio_mapping.h
index 8be8eeb6fa030cfbb27099abdf4c18a4d9b3e519..bac2b10b0a4b77cef32ccfe6c7bf9984d38d3462 100644 (file)
@@ -1,5 +1,5 @@
 /*
-    Copyright (C) 2013-2014 Carl Hetherington <cth@carlh.net>
+    Copyright (C) 2013-2015 Carl Hetherington <cth@carlh.net>
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
 
 */
 
+/** @file  src/lib/audio_mapping.h
+ *  @brief AudioMapping class.
+ */
+
 #ifndef DCPOMATIC_AUDIO_MAPPING_H
 #define DCPOMATIC_AUDIO_MAPPING_H
 
-#include <vector>
-#include <boost/shared_ptr.hpp>
-#include <dcp/types.h>
 #include <libcxml/cxml.h>
+#include <dcp/types.h>
+#include <boost/shared_ptr.hpp>
+#include <vector>
 
 namespace xmlpp {
        class Node;
@@ -33,7 +37,9 @@ namespace cxml {
        class Node;
 }
 
-/** A many-to-many mapping from some content channels to DCP channels.
+/** @class AudioMapping.
+ *  @brief A many-to-many mapping from some content channels to DCP channels.
+ *
  *  The number of content channels is set on construction and fixed,
  *  and then each of those content channels are mapped to each DCP channel
  *  by a linear gain.
@@ -59,6 +65,9 @@ public:
        }
 
        std::string digest () const;
+
+       std::list<dcp::Channel> mapped_dcp_channels () const;
+       void unmap_all ();
        
 private:
        void setup (int);