49 lines
1.1 KiB
C++
49 lines
1.1 KiB
C++
#ifndef _GUITAR_MIDIHELPER_HPP_
|
|
#define _GUITAR_MIDIHELPER_HPP_
|
|
#ifndef _COMMON_BLOCK_HPP_
|
|
#include <common/block.hpp>
|
|
#endif
|
|
#ifndef _COMMON_STRING_HPP_
|
|
#include <common/string.hpp>
|
|
#endif
|
|
#ifndef _MUSIC_NOTE_HPP_
|
|
#include <music/note.hpp>
|
|
#endif
|
|
#ifndef _GUITAR_TABENTRY_HPP_
|
|
#include <guitar/tabentry.hpp>
|
|
#endif
|
|
#ifndef _GUITAR_FRETBOARD_HPP_
|
|
#include <guitar/fretboard.hpp>
|
|
#endif
|
|
#ifndef _MIDISEQ_TRACKINFO_HPP_
|
|
#include <midiseq/trackinfo.hpp>
|
|
#endif
|
|
|
|
class MIDIHelper
|
|
{
|
|
public:
|
|
MIDIHelper();
|
|
virtual ~MIDIHelper();
|
|
// bool import(const String &strPathMidiFileName,const String &strPathTabFileName);
|
|
bool import(const String &strPathMidiFileName,Block<String> &strPathTabFileNames);
|
|
bool import(const String &strPathMidiFileName,const String &strPathTabFileName,int selectedTrack);
|
|
bool getTrackInfo(const String &strpathMIDIFileName,TrackInfos &trackInfos);
|
|
private:
|
|
bool createEntry(Block<Note> ¬es,TabEntry &entry);
|
|
bool filterNotesOnFretboard(Block<Note> ¬es);
|
|
|
|
Fretboard mFretboard;
|
|
Block<String> mMessages;
|
|
};
|
|
|
|
inline
|
|
MIDIHelper::MIDIHelper()
|
|
{
|
|
}
|
|
|
|
inline
|
|
MIDIHelper::~MIDIHelper()
|
|
{
|
|
}
|
|
#endif
|