本文整理汇总了C++中Position::GetPreviousBeamDurationType方法的典型用法代码示例。如果您正苦于以下问题:C++ Position::GetPreviousBeamDurationType方法的具体用法?C++ Position::GetPreviousBeamDurationType怎么用?C++ Position::GetPreviousBeamDurationType使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Position
的用法示例。
在下文中一共展示了Position::GetPreviousBeamDurationType方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: TestCaseBeaming
/// Tests the Beaming Functions
/// @return True if all tests were executed, false if not
bool PositionTestSuite::TestCaseBeaming()
{
//------Last Checked------//
// - Jan 18, 2005
// TEST CASE: IsValidPreviousBeamDurationType
{
TEST(wxT("IsValidPreviousBeamDurationType - 0"),
Position::IsValidPreviousBeamDurationType(0));
wxByte i = 1;
for (; i <= 128; i = i * 2)
{
TEST(wxString::Format(wxT("IsValidPreviousBeamDurationType - %d"), i),
(Position::IsValidPreviousBeamDurationType(i) ==
((i == 0) || (i == 8) || (i == 16) || (i == 32) || (i == 64)))
);
// Block overflow
if (i == 128)
break;
}
}
// TEST CASE: SetPreviousBeamDurationType
{
Position position;
TEST(wxT("SetPreviousBeamDurationType - 0"),
position.SetPreviousBeamDurationType(0));
wxByte i = 1;
for (; i <= 128; i = i * 2)
{
TEST(wxString::Format(wxT("SetPreviousBeamDurationType - %d"), i),
(position.SetPreviousBeamDurationType(i) == ((i == 0) ||
(i == 8) || (i == 16) || (i == 32) || (i == 64))) &&
(!((i == 0) || (i == 8) || (i == 16) || (i == 32) ||
(i == 64)) ? 1 : (position.GetPreviousBeamDurationType() == i))
);
// Block overflow
if (i == 128)
break;
}
}
// TEST CASE: SetBeamStart
{
Position position;
TEST(wxT("SetBeamStart - true"),
(position.SetBeamStart() && position.IsBeamStart()));
TEST(wxT("SetBeamStart - false"),
(position.SetBeamStart(false) && !position.IsBeamStart()));
}
// TEST CASE: SetFractionalLeftBeam
{
Position position;
TEST(wxT("SetFractionalLeftBeam - true"),
(position.SetFractionalLeftBeam() && position.HasFractionalLeftBeam()));
TEST(wxT("SetFractionalLeftBeam - false"),
(position.SetFractionalLeftBeam(false) && !position.HasFractionalLeftBeam()));
}
// TEST CASE: SetFractionalRightBeam
{
Position position;
TEST(wxT("SetFractionalRightBeam - true"),
(position.SetFractionalRightBeam() && position.HasFractionalRightBeam()));
TEST(wxT("SetFractionalRightBeam - false"),
(position.SetFractionalRightBeam(false) && !position.HasFractionalRightBeam()));
}
// TEST CASE: SetBeamEnd
{
Position position;
TEST(wxT("SetBeamEnd - true"),
(position.SetBeamEnd() && position.IsBeamEnd()));
TEST(wxT("SetBeamEnd - false"),
(position.SetBeamEnd(false) && !position.IsBeamEnd()));
}
// TEST CASE: ClearBeam
{
Position position;
position.SetPreviousBeamDurationType(16);
position.SetBeamStart();
TEST(wxT("ClearBeam - beam start"),
position.ClearBeam() &&
(!position.IsBeamStart()) &&
(position.GetPreviousBeamDurationType() == 0)
);
position.SetPreviousBeamDurationType(16);
position.SetFractionalLeftBeam();
TEST(wxT("ClearBeam - fractional left beam"),
//.........这里部分代码省略.........
示例2: OnTestParseFile
//.........这里部分代码省略.........
{
if (chordName.IsFormulaModificationFlagSet(formulaModificationFlag))
{
}
// Block overflow
if (formulaModificationFlag == ChordName::suspended4th)
break;
}
if (chordName.IsFretPositionUsed())
{
wxByte fretPosition = chordName.GetFretPosition();
}
if (chordName.IsTypeUsed())
{
wxByte type = chordName.GetType();
}
}
// Parse the rhythm slashes in the system
// In Power Tab Editor v1.7, rhythm slash data can be accessed via the Rhy. Slashes menu
wxUint32 rhythmSlashIndex = 0;
wxUint32 rhythmSlashCount = system->GetRhythmSlashCount();
for (; rhythmSlashIndex < rhythmSlashCount; rhythmSlashIndex++)
{
RhythmSlash* rhythmSlash = system->GetRhythmSlash(rhythmSlashIndex);
wxCHECK2(rhythmSlash != NULL, continue);
wxUint32 position = rhythmSlash->GetPosition();
wxByte durationType = rhythmSlash->GetDurationType();
wxByte previousDurationType = rhythmSlash->GetPreviousBeamDurationType();
bool beamStart = rhythmSlash->IsBeamStart();
bool fractionalBeam = rhythmSlash->HasFractionalBeam();
bool beamEnd = rhythmSlash->IsBeamEnd();
bool tripletStart = rhythmSlash->IsTripletStart();
bool tripletMiddle = rhythmSlash->IsTripletMiddle();
bool tripletEnd = rhythmSlash->IsTripletEnd();
bool dotted = rhythmSlash->IsDotted();
bool doubleDotted = rhythmSlash->IsDoubleDotted();
bool rest = rhythmSlash->IsRest();
bool tied = rhythmSlash->IsTied();
bool muted = rhythmSlash->IsMuted();
bool staccato = rhythmSlash->IsStaccato();
bool pickstrokeUp = rhythmSlash->HasPickStrokeUp();
bool pickstrokeDown = rhythmSlash->HasPickStrokeDown();
bool arpeggioUp = rhythmSlash->HasArpeggioUp();
bool arpeggioDown = rhythmSlash->HasArpeggioDown();
bool tripletFeel1st = rhythmSlash->IsTripletFeel1st();
bool tripletFeel2nd = rhythmSlash->IsTripletFeel2nd();
bool marcato = rhythmSlash->HasMarcato();
bool sforzando = rhythmSlash->HasSforzando();
bool slideIntoFromAbove = rhythmSlash->HasSlideIntoFromAbove();
bool slideIntoFromBelow = rhythmSlash->HasSlideIntoFromBelow();
bool slideOutOfDownwards = rhythmSlash->HasSlideOutOfDownwards();
bool slideOutOfUpwards = rhythmSlash->HasSlideOutOfUpwards();
// TODO: If has single note
{
wxByte stringNumber = 0;
wxByte fretNumber = 0;