From 72255a931add63edef38f9d4bfeeedd2526ee45e Mon Sep 17 00:00:00 2001 From: Jason Felds Date: Wed, 13 Jul 2011 13:50:44 -0400 Subject: [PATCH] Stop some horizontal scrolling. The actual...insanity will begin soon I think. --- src/NoteData.h | 46 ++++++++++++++++++++++++++++++++++++---------- 1 file changed, 36 insertions(+), 10 deletions(-) diff --git a/src/NoteData.h b/src/NoteData.h index 5de742eb30..60a37093ed 100644 --- a/src/NoteData.h +++ b/src/NoteData.h @@ -130,7 +130,8 @@ public: * @param iEndRow the ending point. * @param begin the eventual beginning point of the range. * @param end the eventual end point of the range. */ - void GetTapNoteRange( int iTrack, int iStartRow, int iEndRow, TrackMap::const_iterator &begin, TrackMap::const_iterator &end ) const; + void GetTapNoteRange(int iTrack, int iStartRow, int iEndRow, + TrackMap::const_iterator &begin, TrackMap::const_iterator &end ) const; /** * @brief Return a constant iterator range for [rowBegin,rowEnd). * @param iTrack the column to use. @@ -158,13 +159,17 @@ public: /* Return an iterator range include iStartRow to iEndRow. Extend the range to include * hold notes overlapping the boundary. */ - void GetTapNoteRangeInclusive( int iTrack, int iStartRow, int iEndRow, TrackMap::const_iterator &begin, TrackMap::const_iterator &end, bool bIncludeAdjacent=false ) const; - void GetTapNoteRangeInclusive( int iTrack, int iStartRow, int iEndRow, TrackMap::iterator &begin, TrackMap::iterator &end, bool bIncludeAdjacent=false ); + void GetTapNoteRangeInclusive(int iTrack, int iStartRow, int iEndRow, + TrackMap::const_iterator &begin, TrackMap::const_iterator &end, bool bIncludeAdjacent=false ) const; + void GetTapNoteRangeInclusive(int iTrack, int iStartRow, int iEndRow, + TrackMap::iterator &begin, TrackMap::iterator &end, bool bIncludeAdjacent=false ); /* Return an iterator range include iStartRow to iEndRow. Shrink the range to exclude * hold notes overlapping the boundary. */ - void GetTapNoteRangeExclusive( int iTrack, int iStartRow, int iEndRow, TrackMap::const_iterator &begin, TrackMap::const_iterator &end ) const; - void GetTapNoteRangeExclusive( int iTrack, int iStartRow, int iEndRow, TrackMap::iterator &begin, TrackMap::iterator &end ); + void GetTapNoteRangeExclusive(int iTrack, int iStartRow, int iEndRow, + TrackMap::const_iterator &begin, TrackMap::const_iterator &end ) const; + void GetTapNoteRangeExclusive(int iTrack, int iStartRow, int iEndRow, + TrackMap::iterator &begin, TrackMap::iterator &end ); /* Returns the row of the first TapNote on the track that has a row greater than rowInOut. */ @@ -175,7 +180,17 @@ public: void MoveTapNoteTrack( int dest, int src ); void SetTapNote( int track, int row, const TapNote& tn ); - void AddHoldNote( int iTrack, int iStartRow, int iEndRow, TapNote tn ); // add note hold note merging overlapping HoldNotes and destroying TapNotes underneath + /** + * @brief Add a hold note, merging other overlapping holds and destroying + * tap notes underneath. + * @param iTrack the column to work with. + * @param iStartRow the starting row. + * @param iEndRow the ending row. + * @param tn the tap note. */ + void AddHoldNote(int iTrack, + int iStartRow, + int iEndRow, + TapNote tn ); void ClearRangeForTrack( int rowBegin, int rowEnd, int iTrack ); void ClearRange( int rowBegin, int rowEnd ); @@ -222,7 +237,10 @@ public: // Count rows that contain iMinTaps or more taps. int GetNumRowsWithSimultaneousTaps( int iMinTaps, int iStartIndex = 0, int iEndIndex = MAX_NOTE_ROW ) const; - int GetNumJumps( int iStartIndex = 0, int iEndIndex = MAX_NOTE_ROW ) const { return GetNumRowsWithSimultaneousTaps( 2, iStartIndex, iEndIndex ); } + int GetNumJumps( int iStartIndex = 0, int iEndIndex = MAX_NOTE_ROW ) const + { + return GetNumRowsWithSimultaneousTaps( 2, iStartIndex, iEndIndex ); + } // This row needs at least iMinSimultaneousPresses either tapped or held. bool RowNeedsAtLeastSimultaneousPresses( int iMinSimultaneousPresses, int row ) const; @@ -230,15 +248,23 @@ public: // Count rows that need iMinSimultaneousPresses either tapped or held. int GetNumRowsWithSimultaneousPresses( int iMinSimultaneousPresses, int iStartIndex = 0, int iEndIndex = MAX_NOTE_ROW ) const; - int GetNumHands( int iStartIndex = 0, int iEndIndex = MAX_NOTE_ROW ) const { return GetNumRowsWithSimultaneousPresses( 3, iStartIndex, iEndIndex ); } - int GetNumQuads( int iStartIndex = 0, int iEndIndex = MAX_NOTE_ROW ) const { return GetNumRowsWithSimultaneousPresses( 4, iStartIndex, iEndIndex ); } + int GetNumHands( int iStartIndex = 0, int iEndIndex = MAX_NOTE_ROW ) const + { + return GetNumRowsWithSimultaneousPresses( 3, iStartIndex, iEndIndex ); + } + int GetNumQuads( int iStartIndex = 0, int iEndIndex = MAX_NOTE_ROW ) const + { + return GetNumRowsWithSimultaneousPresses( 4, iStartIndex, iEndIndex ); + } // and the other notetypes int GetNumLifts( int iStartIndex = 0, int iEndIndex = MAX_NOTE_ROW ) const; int GetNumFakes( int iStartIndex = 0, int iEndIndex = MAX_NOTE_ROW ) const; // Transformations - void LoadTransformed( const NoteData& original, int iNewNumTracks, const int iOriginalTrackToTakeFrom[] ); // -1 for iOriginalTracksToTakeFrom means no track + void LoadTransformed(const NoteData& original, + int iNewNumTracks, + const int iOriginalTrackToTakeFrom[] ); // -1 for iOriginalTracksToTakeFrom means no track // XML XNode* CreateNode() const;