add mutex to prevent concurrent session state saves.
[ardour.git] / libs / ardour / midi_track.cc
index f88c331c2ca8a0e7b171b7f1a4aea9a5f9ac7ba9..638ed057063a56b08b0e2f034fa4d6cc1d336260 100644 (file)
@@ -17,8 +17,7 @@
     Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 */
 
-#include <strings.h> // for ffs(3)
-
+#include "pbd/ffs.h"
 #include "pbd/enumwriter.h"
 #include "pbd/convert.h"
 #include "evoral/midi_util.h"
@@ -81,13 +80,7 @@ MidiTrack::init ()
 boost::shared_ptr<Diskstream>
 MidiTrack::create_diskstream ()
 {
-       MidiDiskstream::Flag dflags = MidiDiskstream::Flag (0);
-
-       if (_flags & Auditioner) {
-               dflags = MidiDiskstream::Flag (dflags | MidiDiskstream::Hidden);
-       } else {
-               dflags = MidiDiskstream::Flag (dflags | MidiDiskstream::Recordable);
-       }
+       MidiDiskstream::Flag dflags = MidiDiskstream::Flag (MidiDiskstream::Recordable);
 
        assert(_mode != Destructive);
 
@@ -513,7 +506,7 @@ MidiTrack::filter_channels (BufferSet& bufs, ChannelMode mode, uint32_t mask)
                                }
                                break;
                        case ForceChannel:
-                               ev.set_channel (ffs (mask) - 1);
+                               ev.set_channel (PBD::ffs (mask) - 1);
                                ++e;
                                break;
                        case AllChannels:
@@ -554,7 +547,7 @@ MidiTrack::write_out_of_band_data (BufferSet& bufs, framepos_t /*start*/, framep
 
 int
 MidiTrack::export_stuff (BufferSet& /*bufs*/, framepos_t /*start_frame*/, framecnt_t /*nframes*/, 
-                        boost::shared_ptr<Processor> /*endpoint*/, bool /*include_endpoint*/, bool /*forexport*/)
+                        boost::shared_ptr<Processor> /*endpoint*/, bool /*include_endpoint*/, bool /*for_export*/, bool /*for_freeze*/)
 {
        return -1;
 }
@@ -633,9 +626,9 @@ void
 MidiTrack::MidiControl::set_value(double val)
 {
        bool valid = false;
-       if (std::isinf(val)) {
+       if (isinf(val)) {
                cerr << "MIDIControl value is infinity" << endl;
-       } else if (std::isnan(val)) {
+       } else if (isnan(val)) {
                cerr << "MIDIControl value is NaN" << endl;
        } else if (val < _list->parameter().min()) {
                cerr << "MIDIControl value is < " << _list->parameter().min() << endl;