Ardour  9.2-541-gc1841a13dd
ARDOUR::MusicalMode Class Reference

#include <scale.h>

Inheritance diagram for ARDOUR::MusicalMode:
[legend]

Public Types

enum  Name {
  IonianMajor , AeolianMinor , Dorian , HarmonicMinor ,
  MelodicMinorAscending , MelodicMinorDescending , Phrygian , Lydian ,
  Mixolydian , Locrian , PentatonicMajor , PentatonicMinor ,
  Chromatic , BluesScale , NeapolitanMinor , NeapolitanMajor ,
  Oriental , DoubleHarmonic , Enigmatic , Hirajoshi ,
  HungarianMinor , HungarianMajor , Kumoi , Iwato ,
  Hindu , Spanish8Tone , Pelog , HungarianGypsy ,
  Overtone , LeadingWholeTone , Arabian , Balinese ,
  Gypsy , Mohammedan , Javanese , Persian ,
  Algerian
}
 

Public Member Functions

 MusicalMode (std::string const &name, MusicalModeType type, std::vector< float > const &elements)
 
 MusicalMode (MusicalMode const &other)
 
 MusicalMode (MusicalMode::Name)
 
 MusicalMode (std::ifstream &file)
 
MusicalMode operator= (MusicalMode const &other)
 
std::string name () const
 
MusicalModeType type () const
 
int size () const
 
std::vector< float > const & elements () const
 
std::vector< float > pitches_from_root (float root, int steps) const
 
std::vector< int > as_midi (int scale_root) const
 
void set_name (std::string const &str)
 

Public Attributes

PBD::Signal< void()> NameChanged
 
PBD::Signal< void()> Changed
 

Protected Member Functions

void fill (Name)
 
std::vector< float > absolute_pitch_pitches_from_root (float root, int steps) const
 
std::vector< float > semitone_steps_pitches_from_root (float root, int steps) const
 
std::vector< float > wholetone_steps_pitches_from_root (float root, int steps) const
 
std::vector< float > ratio_steps_pitches_from_root (float root, int steps) const
 
std::vector< float > ratio_from_root_pitches_from_root (float root, int steps) const
 
std::vector< float > midi_note_pitches_from_root (float root, int steps) const
 
std::vector< int > absolute_pitch_as_midi (int root) const
 
std::vector< int > semitone_steps_as_midi (int root) const
 
std::vector< int > wholetone_steps_as_midi (int root) const
 
std::vector< int > ratio_steps_as_midi (int root) const
 
std::vector< int > ratio_from_root_as_midi (int root) const
 
std::vector< int > midi_note_as_midi (int root) const
 

Protected Attributes

std::string _name
 
MusicalModeType _type
 
std::vector< float > _elements
 

Detailed Description

Definition at line 47 of file ardour/ardour/scale.h.

Member Enumeration Documentation

◆ Name

Enumerator
IonianMajor 
AeolianMinor 
Dorian 
HarmonicMinor 
MelodicMinorAscending 
MelodicMinorDescending 
Phrygian 
Lydian 
Mixolydian 
Locrian 
PentatonicMajor 
PentatonicMinor 
Chromatic 
BluesScale 
NeapolitanMinor 
NeapolitanMajor 
Oriental 
DoubleHarmonic 
Enigmatic 
Hirajoshi 
HungarianMinor 
HungarianMajor 
Kumoi 
Iwato 
Hindu 
Spanish8Tone 
Pelog 
HungarianGypsy 
Overtone 
LeadingWholeTone 
Arabian 
Balinese 
Gypsy 
Mohammedan 
Javanese 
Persian 
Algerian 

Definition at line 50 of file ardour/ardour/scale.h.

Constructor & Destructor Documentation

◆ MusicalMode() [1/4]

ARDOUR::MusicalMode::MusicalMode ( std::string const &  name,
MusicalModeType  type,
std::vector< float > const &  elements 
)

◆ MusicalMode() [2/4]

ARDOUR::MusicalMode::MusicalMode ( MusicalMode const &  other)

◆ MusicalMode() [3/4]

ARDOUR::MusicalMode::MusicalMode ( MusicalMode::Name  )

◆ MusicalMode() [4/4]

ARDOUR::MusicalMode::MusicalMode ( std::ifstream &  file)

Member Function Documentation

◆ absolute_pitch_as_midi()

std::vector<int> ARDOUR::MusicalMode::absolute_pitch_as_midi ( int  root) const
protected

◆ absolute_pitch_pitches_from_root()

std::vector<float> ARDOUR::MusicalMode::absolute_pitch_pitches_from_root ( float  root,
int  steps 
) const
protected

◆ as_midi()

std::vector<int> ARDOUR::MusicalMode::as_midi ( int  scale_root) const

◆ elements()

std::vector<float> const& ARDOUR::MusicalMode::elements ( ) const
inline

Definition at line 100 of file ardour/ardour/scale.h.

◆ fill()

void ARDOUR::MusicalMode::fill ( Name  )
protected

◆ midi_note_as_midi()

std::vector<int> ARDOUR::MusicalMode::midi_note_as_midi ( int  root) const
protected

◆ midi_note_pitches_from_root()

std::vector<float> ARDOUR::MusicalMode::midi_note_pitches_from_root ( float  root,
int  steps 
) const
protected

◆ name()

std::string ARDOUR::MusicalMode::name ( ) const
inline

Definition at line 97 of file ardour/ardour/scale.h.

◆ operator=()

MusicalMode ARDOUR::MusicalMode::operator= ( MusicalMode const &  other)

◆ pitches_from_root()

std::vector<float> ARDOUR::MusicalMode::pitches_from_root ( float  root,
int  steps 
) const

◆ ratio_from_root_as_midi()

std::vector<int> ARDOUR::MusicalMode::ratio_from_root_as_midi ( int  root) const
protected

◆ ratio_from_root_pitches_from_root()

std::vector<float> ARDOUR::MusicalMode::ratio_from_root_pitches_from_root ( float  root,
int  steps 
) const
protected

◆ ratio_steps_as_midi()

std::vector<int> ARDOUR::MusicalMode::ratio_steps_as_midi ( int  root) const
protected

◆ ratio_steps_pitches_from_root()

std::vector<float> ARDOUR::MusicalMode::ratio_steps_pitches_from_root ( float  root,
int  steps 
) const
protected

◆ semitone_steps_as_midi()

std::vector<int> ARDOUR::MusicalMode::semitone_steps_as_midi ( int  root) const
protected

◆ semitone_steps_pitches_from_root()

std::vector<float> ARDOUR::MusicalMode::semitone_steps_pitches_from_root ( float  root,
int  steps 
) const
protected

◆ set_name()

void ARDOUR::MusicalMode::set_name ( std::string const &  str)

◆ size()

int ARDOUR::MusicalMode::size ( ) const
inline

Definition at line 99 of file ardour/ardour/scale.h.

◆ type()

MusicalModeType ARDOUR::MusicalMode::type ( ) const
inline

Definition at line 98 of file ardour/ardour/scale.h.

◆ wholetone_steps_as_midi()

std::vector<int> ARDOUR::MusicalMode::wholetone_steps_as_midi ( int  root) const
protected

◆ wholetone_steps_pitches_from_root()

std::vector<float> ARDOUR::MusicalMode::wholetone_steps_pitches_from_root ( float  root,
int  steps 
) const
protected

Member Data Documentation

◆ _elements

std::vector<float> ARDOUR::MusicalMode::_elements
protected

Definition at line 112 of file ardour/ardour/scale.h.

◆ _name

std::string ARDOUR::MusicalMode::_name
protected

Definition at line 110 of file ardour/ardour/scale.h.

◆ _type

MusicalModeType ARDOUR::MusicalMode::_type
protected

Definition at line 111 of file ardour/ardour/scale.h.

◆ Changed

PBD::Signal<void()> ARDOUR::MusicalMode::Changed

Definition at line 107 of file ardour/ardour/scale.h.

◆ NameChanged

PBD::Signal<void()> ARDOUR::MusicalMode::NameChanged

Definition at line 106 of file ardour/ardour/scale.h.


The documentation for this class was generated from the following file: