24GetSteps(
const Song* pSong,
25 std::vector<Steps*>& arrayAddTo,
26 StepsType st = StepsType_Invalid,
27 Difficulty dc = Difficulty_Invalid,
30 bool filteringSteps =
false,
31 const std::string& sDescription =
"",
32 const std::string& sCredit =
"",
33 bool bIncludeAutoGen =
true,
37GetOneSteps(
const Song* pSong,
38 StepsType st = StepsType_Invalid,
39 Difficulty dc = Difficulty_Invalid,
42 bool filteringSteps =
false,
43 const std::string& sDescription =
"",
44 const std::string& sCredit =
"",
46 bool bIncludeAutoGen =
true) ->
Steps*;
48GetStepsByDifficulty(
const Song* pSong,
51 bool bIncludeAutoGen =
true) ->
Steps*;
53GetStepsByMeter(
const Song* pSong, StepsType st,
int iMeterLow,
int iMeterHigh)
56GetStepsByDescription(
const Song* pSong,
58 const std::string& sDescription) ->
Steps*;
60GetStepsByCredit(
const Song* pSong, StepsType st,
const std::string& sCredit)
63GetClosestNotes(
const Song* pSong,
66 bool bIgnoreLocked =
false) ->
Steps*;
69AdjustDuplicateSteps(
Song* pSong);
71DeleteDuplicateSteps(
Song* pSong, std::vector<Steps*>& vSteps);
74MakeSortString(std::string& s);
76MakeSortString(
const std::string& in) -> std::string;
78SortSongPointerArrayByTitle(std::vector<Song*>& vpSongsInOut);
80SortSongPointerArrayByBPM(std::vector<Song*>& vpSongsInOut);
82SortSongPointerArrayByWifeScore(std::vector<Song*>& v);
84SortSongPointerArrayByArtist(std::vector<Song*>& vpSongsInOut);
86SortSongPointerArrayByDisplayArtist(std::vector<Song*>& vpSongsInOut);
88SortSongPointerArrayByGenre(std::vector<Song*>& vpSongsInOut);
90SortSongPointerArrayByGroupAndTitle(std::vector<Song*>& vpSongsInOut);
92SortSongPointerArrayByGroupAndMSD(std::vector<Song*>& vpSongsInOut, Skillset ss);
94SortSongPointerArrayByNumPlays(std::vector<Song*>& vpSongsInOut,
98SortSongPointerArrayByNumPlays(std::vector<Song*>& vpSongsInOut,
102SortSongPointerArrayByStepsTypeAndMeter(std::vector<Song*>& vpSongsInOut,
106GetSectionNameFromSongAndSort(
const Song* pSong, SortOrder so) -> std::string;
108SortSongPointerArrayBySectionName(std::vector<Song*>& vpSongsInOut, SortOrder so);
110SortSongPointerArrayByLength(std::vector<Song*>& vpSongsInOut);
112SortSongPointerArrayByDateAdded(std::vector<Song*>& vpSongsInOut);
114SortSongPointerArrayByAuthor(std::vector<Song*>& vpSongsInOut);
117CompareSongPointersByGroup(
const Song* pSong1,
const Song* pSong2) -> int;
130 const std::string& sPreferredDescription,
131 const Steps* pExclude) -> bool;
133IsChartNameUnique(
const Song* pSong,
135 const std::string& name,
136 const Steps* pExclude) -> bool;
138MakeUniqueEditDescription(
const Song* pSong,
140 const std::string& sPreferredDescription)
143ValidateCurrentEditStepsDescription(
const std::string& sAnswer,
144 std::string& sErrorOut) -> bool;
146ValidateCurrentStepsDescription(
const std::string& sAnswer,
147 std::string& sErrorOut) -> bool;
149ValidateCurrentStepsCredit(
const std::string& sAnswer, std::string& sErrorOut)
152ValidateCurrentStepsChartName(
const std::string& answer, std::string& error)
155ValidateCurrentSongPreview(
const std::string& answer, std::string& error)
158ValidateCurrentStepsMusic(
const std::string& answer, std::string& error)
162GetAllSongGenres(std::vector<std::string>& vsOut);
164GetPlayableStepsTypes(
const Song* pSong, std::set<StepsType>& vOut);
166GetPlayableSteps(
const Song* pSong, std::vector<Steps*>& vOut,
bool filteringSteps =
false);
168IsStepsTypePlayable(
Song* pSong, StepsType st) -> bool;
170IsStepsPlayable(
Song* pSong,
Steps* pSteps) -> bool;
180GetStepsTypeAndDifficultyFromSortOrder(SortOrder so,
182 Difficulty& dc) -> bool;