void run (BufferSet& /*bufs*/, samplepos_t /*start_sample*/, samplepos_t /*end_sample*/, double speed, pframes_t /*nframes*/, bool /*result_required*/);
void realtime_handle_transport_stopped ();
void realtime_locate ();
- int overwrite_existing_buffers ();
- void set_pending_overwrite (bool yn);
+ bool overwrite_existing_buffers ();
+ void set_pending_overwrite ();
int set_state (const XMLNode&, int version);
float capture_buffer_load () const;
int do_refill ();
int do_flush (RunContext, bool force = false);
- void set_pending_overwrite (bool);
+ void set_pending_overwrite ();
int seek (samplepos_t, bool complete_refill = false);
bool can_internal_playback_seek (samplecnt_t);
void internal_playback_seek (samplecnt_t);
void non_realtime_locate (samplepos_t);
void realtime_handle_transport_stopped ();
- int overwrite_existing_buffers ();
+ bool overwrite_existing_buffers ();
samplecnt_t get_captured_samples (uint32_t n = 0) const;
void transport_looped (samplepos_t);
void transport_stopped_wallclock (struct tm &, time_t, bool);
}
void
-DiskReader::set_pending_overwrite (bool yn)
+DiskReader::set_pending_overwrite ()
{
/* called from audio thread, so we can use the read ptr and playback sample as we wish */
- _pending_overwrite = yn;
+ assert (!_pending_overwrite);
+ _pending_overwrite = true;
overwrite_sample = playback_sample;
boost::shared_ptr<ChannelList> c = channels.reader ();
}
}
-int
+bool
DiskReader::overwrite_existing_buffers ()
{
- int ret = -1;
-
boost::shared_ptr<ChannelList> c = channels.reader();
overwrite_queued = false;
goto midi;
}
}
-
- ret = 0;
}
midi:
_pending_overwrite = false;
- return ret;
+ return true;
}
int
if (t) {
- t->set_pending_overwrite (true);
+ t->set_pending_overwrite ();
} else {
for (RouteList::iterator i = rl->begin(); i != rl->end(); ++i) {
boost::shared_ptr<Track> tr = boost::dynamic_pointer_cast<Track> (*i);
if (tr) {
- tr->set_pending_overwrite (true);
+ tr->set_pending_overwrite ();
}
}
}
}
void
-Track::set_pending_overwrite (bool o)
+Track::set_pending_overwrite ()
{
- _disk_reader->set_pending_overwrite (o);
+ _disk_reader->set_pending_overwrite ();
}
int
Route::non_realtime_locate (p);
}
-int
+bool
Track::overwrite_existing_buffers ()
{
return _disk_reader->overwrite_existing_buffers ();