Commit Graph

278 Commits

Author SHA1 Message Date
Steve Checkoway cd9ec6d6c0 Pointers to a member function Foo::Bar() have the form &Foo::Bar. The & is mandatory, unlike pointers to functions. 2006-10-23 00:14:12 +00:00
Chris Danford 21fafaa046 add all_tracks_reverse_iterator 2006-10-22 23:08:13 +00:00
Glenn Maynard cad383b2ab redundant 2006-10-02 06:12:06 +00:00
Steve Checkoway 01fb4540f3 Simplify. 2006-10-01 14:51:50 +00:00
Steve Checkoway 8cffb9666f Simplify. 2006-08-23 22:33:08 +00:00
Steve Checkoway 5cfab46c84 Simplify. 2006-08-23 22:05:35 +00:00
Steve Checkoway a491752dba The shift key is an important one. 2006-08-19 20:05:43 +00:00
Steve Checkoway 330d9ef714 Fix crash. 2006-08-19 19:55:05 +00:00
Steve Checkoway 5ccbffebfc Simplify IsAtEnd logic. (I forgot to mention that these iterators have a one time O(log n) cost to construct.) 2006-08-17 18:05:42 +00:00
Steve Checkoway f57bc1ef78 Use NoteData::iterator instead of a track-row pair. With n nonempty rows in the NoteData and m nonempty rows in the range, iterating over the whole range took O(m log n). Now, it takes O(m). (Saves the map look ups which are amortized log-time.) 2006-08-17 17:58:45 +00:00
Glenn Maynard e0a23cfbd4 vc7 fix 2006-08-16 18:43:13 +00:00
Steve Checkoway 6bfccc7f4c Remove IteratorCondition, use NULL to signify what was previously IteratorCondition::All. 2006-08-16 11:57:24 +00:00
Steve Checkoway dc9361a4ef Move class template's member function definitions out of the header, explicitly instantiate all_tracks_iterator and all_tracks_const_iterator.
Apart from cleaning up the header (the main goal), this should improve compile time by instantiating in a single place so the linker doesn't have to combine multiple definitions.
2006-08-16 11:37:38 +00:00
Josh Allen 0fd98658a5 Add iterator condition All. Fixes linker error. 2006-07-21 16:22:52 +00:00
Steve Checkoway c299a7a4f7 GetTapNoteRangeAllTracks() returns an all_tracks_iterator which can be used to iterate over all of the tracks in all of the rows in the range. Also, you can specify a condition on the notes to be returned.
Simplify.
2006-07-21 07:59:41 +00:00
Steve Checkoway 8129d943ba It's hard to maintain this information when using begin() and end() so rather than wrapping the iterators, just check each time IsComposite() is called since it doesn't happen _that_ often. Just don't call IsComposite() often. 2006-06-26 09:33:11 +00:00
Steve Checkoway 91f1329653 Composite NoteData for when one NoteData represents multiple NoteDatas. 2006-06-20 13:20:45 +00:00
Chris Danford 1c36401033 ASSERT_M to catch invalid value 2006-06-14 10:14:49 +00:00
Chris Danford ddaa912878 ASSERT_M to catch invalid value 2006-06-14 10:07:04 +00:00
Chris Danford 1ad58b4631 experimental: save NoteData to XML for recording played games 2005-11-22 21:18:45 +00:00
Glenn Maynard abc2595e45 simplify 2005-10-07 02:57:54 +00:00
Glenn Maynard fbac911c8d fix ClearRangeForTrack splits hold notes when given a degenerate range 2005-07-30 07:08:50 +00:00
Glenn Maynard 733a465f62 more precise definition 2005-07-30 05:59:39 +00:00
Glenn Maynard b8838ba5c0 comment to make IsHoldNoteAtRow's behavior clear, add IsHoldHeadOrBodyAtRow 2005-07-22 00:34:54 +00:00
Glenn Maynard 4ec405f13b IsHoldNoteAtBeat -> IsHoldNoteAtRow 2005-07-22 00:14:24 +00:00
Glenn Maynard 5769d00abf implement GetPrevTapNoteRowForAllTracks 2005-07-21 22:30:00 +00:00
Glenn Maynard f2a418d79d implement HiddenPtr smart pointer type; use it for Steps. This avoids having
to write a whole copy constructor for a class just to hide a couple types from
the header.
2005-07-03 03:05:54 +00:00
Chris Danford c36df02254 add rolls to eval and scoring 2005-05-09 06:15:59 +00:00
Glenn Maynard 73f5051118 add NoteData::GetNumRolls 2005-04-25 09:33:58 +00:00
Chris Danford 2a9bd36813 fix "can't lay holds longer than 1 snap value in record" 2005-04-07 19:30:40 +00:00
Chris Danford cd8b35e801 fix "can't paste from clipboard with only one row in clipboard"
fix "can't Undo to a blank NoteField"
clamp paste area so that pasting past the maximum beat is impossible
2005-03-29 20:25:14 +00:00
Glenn Maynard 34b8c2a01a fix hands counting 2005-03-23 10:37:36 +00:00
Chris Danford 5befb60456 method name cleanup, add comments 2005-03-20 20:15:41 +00:00
Chris Danford 38bd0116d1 ensure that memory is really freed 2005-03-08 21:18:00 +00:00
Glenn Maynard f752e1c3b0 hide NoteData::InsertHoldTails away in NoteDataUtils 2005-02-07 22:03:32 +00:00
Glenn Maynard 10bc0bf336 remove NoteData::RemoveHoldTails
cleanup
2005-02-07 21:55:43 +00:00
Glenn Maynard 1962259078 revert; bugs should be fixed, not ignored 2005-02-07 19:27:49 +00:00
Charles Lohr 2d566a0c33 We shouldn't crash here, right? and... let's not crash if we still have hold tails. 2005-02-07 18:55:09 +00:00
Glenn Maynard ce8c71ce8b cleanup 2005-01-25 19:36:38 +00:00
Glenn Maynard bb7482e722 evil big commit (sorry):
Remove m_HoldNote array entirely.  Remove 2sAnd3s.  Store hold note
durations in the hold head.  hold_tail only still exists when InsertHoldTails
is used, to make SM parsing a little easier (may go away).  Add helpers
for iterating over ranges while including or excluding adjacent and overlapping
hold notes.  Range operations are now [start,end) instead of [start,end].
(probably more details coming to sm-dev soon)
2005-01-25 05:02:35 +00:00
Glenn Maynard 206363742d remove 4s 2005-01-23 21:37:40 +00:00
Glenn Maynard 982ec42ab8 simplify 2005-01-23 21:28:47 +00:00
Glenn Maynard 5da9c848d6 make NoteDataUtil::LoadTransformedLights work 2005-01-23 17:58:32 +00:00
Glenn Maynard 18e32dbda4 don't lose HoldNoteResult when converting to/from 2sAnd3s 2005-01-23 17:17:24 +00:00
Glenn Maynard 7cf3351851 implement NoteDataUtil::ClearLeft and NoteDataUtil::ClearRight without 4s 2005-01-23 05:31:55 +00:00
Glenn Maynard f55f7e0a08 NoteData::LoadTransformed fix 2005-01-23 05:15:18 +00:00
Glenn Maynard 60a0ce8eb0 implement NoteData::ClearRange and NoteData::CopyRange without 4s 2005-01-23 04:57:43 +00:00
Glenn Maynard f954aa2019 NoteData::IsHoldNoteAtBeat fix 2005-01-23 03:48:22 +00:00
Glenn Maynard 14bc4ae9f6 reduce use of 4s 2005-01-22 20:22:12 +00:00
Glenn Maynard a769bc7c41 cleanup 2005-01-22 19:25:05 +00:00