当前位置: 首页>>代码示例>>C++>>正文


C++ Position::GetTremoloBar方法代码示例

本文整理汇总了C++中Position::GetTremoloBar方法的典型用法代码示例。如果您正苦于以下问题:C++ Position::GetTremoloBar方法的具体用法?C++ Position::GetTremoloBar怎么用?C++ Position::GetTremoloBar使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Position的用法示例。


在下文中一共展示了Position::GetTremoloBar方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: TestCaseTremoloBar

/// Tests the Tremolo Bar Functions
/// @return True if all tests were executed, false if not
bool PositionTestSuite::TestCaseTremoloBar()
{
    //------Last Checked------//
    // - Jan 19, 2005
        
    // TEST CASE: SetTremoloBar
    {
        Position position;
        TEST(wxT("SetTremoloBar - invalid type"),
            !position.SetTremoloBar(255, 1, 12));
        TEST(wxT("SetTremoloBar - invalid duration"),
            !position.SetTremoloBar(Position::invertedDip, 255, 12));
        TEST(wxT("SetTremoloBar - invalid pitch"), 
            !position.SetTremoloBar(Position::invertedDip, 1, 255));
        
        bool set = position.SetTremoloBar(Position::invertedDip, 1, 12);
        wxByte type = 0;
        wxByte duration = 0;
        wxByte pitch = 0;
        bool get = position.GetTremoloBar(type, duration, pitch);
        TEST(wxT("SetTremoloBar - valid"), 
            ((set) &&
            (get) &&
            (position.HasTremoloBar()) &&
            (type == Position::invertedDip) &&
            (duration == 1) &&
            (pitch == 12))
        );
        
        {
            Position position;
            position.SetVolumeSwell(Dynamic::off, Dynamic::mp, 1);
            bool set = position.SetVolumeSwell(Dynamic::mf, Dynamic::fff, 3);
            wxByte startVolume = 0;
            wxByte endVolume = 0;
            wxByte duration = 0;
            bool get = position.GetVolumeSwell(startVolume, endVolume, duration);
            TEST(wxT("SetVolumeSwell - update"), 
                ((set) &&
                (get) &&
                (position.HasVolumeSwell()) &&
                (startVolume == Dynamic::mf) &&
                (endVolume == Dynamic::fff) &&
                (duration == 3))
            );
        }
    }
    
    // TEST CASE: GetTremoloBar
    {
        Position position;
        wxByte type = 0;
        wxByte duration = 0;
        wxByte pitch = 0;
        TEST(wxT("GetTremoloBar - empty"),
            !position.GetTremoloBar(type, duration, pitch)
        );
    }
    
    // TEST CASE: ClearTremoloBar
    {
        Position position;
        bool set = position.SetTremoloBar(Position::invertedDip, 1, 12);
        position.ClearTremoloBar();
        TEST(wxT("ClearTremoloBar"), 
            ((set) &&
            !position.HasTremoloBar())
        );
    }
    
    return (true);
}
开发者ID:RaptDept,项目名称:ptparser,代码行数:74,代码来源:positiontestsuite.cpp

示例2: OnTestParseFile


//.........这里部分代码省略.........
                            bool wideVibrato = position->HasWideVibrato();
                            bool arpeggioUp = position->HasArpeggioUp();
                            bool arpeggioDown = position->HasArpeggioDown();
                            bool pickstrokeUp = position->HasPickStrokeUp();
                            bool pickstrokeDown = position->HasPickStrokeDown();
                            bool staccato = position->IsStaccato();
                            bool marcato = position->HasMarcato();
                            bool sforzando = position->HasSforzando();
                            bool tremoloPicking = position->HasTremoloPicking();
                            bool palmMuting = position->HasPalmMuting();
                            bool tap = position->HasTap();
                            bool acciaccatura = position->IsAcciaccatura();
                            bool tripletFeel1st = position->IsTripletFeel1st();
                            bool tripletFeel2nd = position->IsTripletFeel2nd();
                            bool letRing = position->HasLetRing();
                            bool fermata = position->HasFermata();
                            bool irregularGroupingStart = position->IsIrregularGroupingStart();
                            bool irregularGroupingMiddle = position->IsIrregularGroupingMiddle();
                            bool irregularGroupingEnd = position->IsIrregularGroupingEnd();
                            
                            if (position->HasVolumeSwell())
                            {
                                wxByte startVolume = 0;
                                wxByte endVolume = 0;
                                wxByte duration = 0;
                                position->GetVolumeSwell(startVolume, endVolume, duration);
                            }
                            
                            if (position->HasTremoloBar())
                            {
                                wxByte type = 0;
                                wxByte duration = 0;
                                wxByte pitch = 0;
                                position->GetTremoloBar(type, duration, pitch);
                            }
                            
                            // Parse the notes
                            // In Power Tab Editor v1.7, note data can be accessed via the Notes menu, as well as
                            // the Tab Symbols menu
                            wxUint32 noteIndex = 0;
                            wxUint32 noteCount = position->GetNoteCount();
                            for (; noteIndex < noteCount; noteIndex++)
                            {
                                Note* note = position->GetNote(noteIndex);
                                wxCHECK2(note != NULL, continue);
                                
                                wxUint32 string = note->GetString();
                                wxUint32 fretNumber = note->GetFretNumber();
                                bool tied = note->IsTied();
                                bool muted = note->IsMuted();
                                bool tieWrap = note->HasTieWrap();
                                bool hammerOn = note->HasHammerOn();
                                bool hammerOnFromNowhere = note->HasHammerOnFromNowhere();
                                bool pullOff = note->HasPullOff();
                                bool pullOffToNowhere = note->HasPullOffToNowhere();
                                bool naturalHarmonic = note->IsNaturalHarmonic();
                                bool ghostNote = note->IsGhostNote();
                                bool octave8va = note->IsOctave8va();
                                bool octave15ma = note->IsOctave15ma();
                                bool octave8vb = note->IsOctave8vb();
                                bool octave15mb = note->IsOctave15mb();
                                
                                if (note->HasSlideInto())
                                {
                                    wxByte type = 0;
                                    note->GetSlideInto(type);
开发者ID:BackupTheBerlios,项目名称:ptparser-svn,代码行数:67,代码来源:powertabview.cpp


注:本文中的Position::GetTremoloBar方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。