, _locked (false)
, _position_lock_style (AudioTime)
{
-
+ assert (_start >= 0);
+ assert (_end >= 0);
}
Location::Location (Session& s, framepos_t sample_start, framepos_t sample_end, const std::string &name, Flags bits)
, _position_lock_style (AudioTime)
{
recompute_bbt_from_frames ();
+
+ assert (_start >= 0);
+ assert (_end >= 0);
}
Location::Location (const Location& other)
/* copy is not locked even if original was */
_locked = false;
+
+ assert (_start >= 0);
+ assert (_end >= 0);
}
Location::Location (Session& s, const XMLNode& node)
if (set_state (node, Stateful::loading_state_version)) {
throw failed_constructor ();
}
+
+ assert (_start >= 0);
+ assert (_end >= 0);
}
Location*
/* "changed" not emitted on purpose */
+ assert (_start >= 0);
+ assert (_end >= 0);
+
return this;
}
if (allow_bbt_recompute) {
recompute_bbt_from_frames ();
}
+
start_changed (this); /* EMIT SIGNAL */
end_changed (this); /* EMIT SIGNAL */
}
+
+ assert (_start >= 0);
+ assert (_end >= 0);
+
return 0;
}
if (s != _start) {
+
+ framepos_t const old = _start;
+
_start = s;
if (allow_bbt_recompute) {
recompute_bbt_from_frames ();
}
start_changed (this); /* EMIT SIGNAL */
if (is_session_range ()) {
- Session::StartTimeChanged (); /* EMIT SIGNAL */
+ Session::StartTimeChanged (old); /* EMIT SIGNAL */
AudioFileSource::set_header_position_offset (s);
}
}
+ assert (_start >= 0);
+
return 0;
}
start_changed (this); /* EMIT SIGNAL */
end_changed (this); /* EMIT SIGNAL */
}
+
+ assert (_start >= 0);
+ assert (_end >= 0);
+
return 0;
}
if (e != _end) {
+ framepos_t const old = _end;
+
_end = e;
if (allow_bbt_recompute) {
recompute_bbt_from_frames ();
end_changed(this); /* EMIT SIGNAL */
if (is_session_range()) {
- Session::EndTimeChanged (); /* EMIT SIGNAL */
+ Session::EndTimeChanged (old); /* EMIT SIGNAL */
}
}
+ assert (_end >= 0);
+
return 0;
}
changed (this); /* EMIT SIGNAL */
}
+ assert (_start >= 0);
+ assert (_end >= 0);
+
return 0;
}
changed (this); /* EMIT SIGNAL */
+ assert (_start >= 0);
+ assert (_end >= 0);
+
return 0;
}
if (make_current) {
current_changed (current_location); /* EMIT SIGNAL */
}
+
+ if (loc->is_session_range()) {
+ Session::StartTimeChanged (0);
+ Session::EndTimeChanged (1);
+ }
}
void