48 ChordInfo (
Intervals const & i, int64_t hash, std::string
const & canon, std::string
const & shrt, std::vector<std::string>
const & others)
51 , canonical_name (canon)
53 , other_names (others) {}
65 static int load (std::string
const & path);
108 fourth = PerfectFourth,
112 dblflat7 = MajorSixth,
118 DiminishedSeventh = 9,
124 PerfectEleventh = 17,
126 MajorThirteenth = 21,
static void load_12tet_chords()
ChordInfo const * by_canonical_name(std::string const &) const
std::string identify_chord(Intervals const &)
static int64_t hash_intervals(ChordProvider::Intervals const &intervals)
static std::vector< ChordInfo > chord_info
std::string canonical_name(Intervals const &)
std::vector< int > Intervals
static bool add_chord(ChordInfo const &)
virtual bool get_midi_chord(int root_pitch, Intervals &pitches) const =0
static int load(std::string const &path)
ChordInfo const * by_any_name(std::string const &) const
ChordInfo const * by_short_name(std::string const &) const
std::vector< std::string > other_names(Intervals const &)
std::string short_name(Intervals const &)
ChordInfo(Intervals const &i, int64_t hash, std::string const &canon, std::string const &shrt, std::vector< std::string > const &others)
std::vector< std::string > other_names
std::string canonical_name