data: clip does nothing for trivial or unstared ranges

This commit is contained in:
Paul Beckingham 2016-04-30 12:25:20 -04:00
parent 3ae88e9383
commit c74576f5d1

View file

@ -48,7 +48,6 @@ Interval getFilter (const CLI& cli)
std::string start; std::string start;
std::string end; std::string end;
std::string duration; std::string duration;
std::vector <std::string> args; std::vector <std::string> args;
for (auto& arg : cli._args) for (auto& arg : cli._args)
{ {
@ -206,8 +205,8 @@ Interval getFilter (const CLI& cli)
filter.range = range; filter.range = range;
/* /*
std::cout << "# getFilter:\n"; std::cout << "# getFilter:\n"
std::cout << "# " << filter.dump () << "\n"; << "# " << filter.dump () << "\n";
*/ */
return filter; return filter;
} }
@ -562,7 +561,6 @@ bool matchesFilter (const Interval& interval, const Interval& filter)
((interval.range.end.toEpoch () == 0 || interval.range.end > filter.range.start) && ((interval.range.end.toEpoch () == 0 || interval.range.end > filter.range.start) &&
(filter.range.end.toEpoch () == 0 || interval.range.start < filter.range.end))) (filter.range.end.toEpoch () == 0 || interval.range.start < filter.range.end)))
{ {
for (auto& tag : filter.tags ()) for (auto& tag : filter.tags ())
if (! interval.hasTag (tag)) if (! interval.hasTag (tag))
@ -578,11 +576,19 @@ bool matchesFilter (const Interval& interval, const Interval& filter)
// Take an interval and clip it to the range. // Take an interval and clip it to the range.
Interval clip (const Interval& interval, const Range& range) Interval clip (const Interval& interval, const Range& range)
{ {
if (! range.started ()) if (! range.started () ||
range.total () == 0)
return interval; return interval;
Interval clipped {interval}; Interval clipped {interval};
clipped.range = clipped.range.intersect (range); clipped.range = clipped.range.intersect (range);
/*
std::cout << "# clip:\n"
<< "# input " << interval.dump () << "\n"
<< "# range " << range.dump () << "\n"
<< "# clipped " << clipped.dump () << "\n";
*/
return clipped; return clipped;
} }