diff options
author | Florian Jung <flo@windfisch.org> | 2013-08-28 00:40:01 +0200 |
---|---|---|
committer | Florian Jung <flo@windfisch.org> | 2013-08-28 00:40:01 +0200 |
commit | aad3d78d3ec7e4916028059cb7b0023eedbaa095 (patch) | |
tree | 334ed55449926dd581c78cc34e28f96856875901 /muse2/muse/eventlist.cpp | |
parent | ea623cac61f43baf3890c2c8a71c95d7ad453e28 (diff) |
added "similar"-comparison to Event(Base)
Diffstat (limited to 'muse2/muse/eventlist.cpp')
-rw-r--r-- | muse2/muse/eventlist.cpp | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/muse2/muse/eventlist.cpp b/muse2/muse/eventlist.cpp index ecc7f452..80180ab7 100644 --- a/muse2/muse/eventlist.cpp +++ b/muse2/muse/eventlist.cpp @@ -151,6 +151,29 @@ ciEvent EventList::find(const Event& event) const return end(); } +iEvent EventList::findSimilar(const Event& event) +{ + std::pair<iEvent,iEvent> range = equal_range(event.type() == Wave ? event.frame() : event.tick()); + + for (iEvent i = range.first; i != range.second; ++i) { + if (i->second.isSimilarTo(event)) + return i; + } + return end(); +} + +ciEvent EventList::findSimilar(const Event& event) const + { + EventRange range = equal_range(event.type() == Wave ? event.frame() : event.tick()); + + + for (ciEvent i = range.first; i != range.second; ++i) { + if (i->second.isSimilarTo(event)) + return i; + } + return end(); + } + //--------------------------------------------------------- // dump //--------------------------------------------------------- |