/* * * * (c) 2009-2019 Øystein Moseng * * Instrument definitions for sonification module. * * License: www.highcharts.com/license * * */ 'use strict'; import Instrument from './Instrument'; import utilities from './utilities'; var instruments = {}; ['sine', 'square', 'triangle', 'sawtooth'].forEach(function (waveform) { // Add basic instruments instruments[waveform] = new Instrument({ oscillator: { waveformShape: waveform } }); // Add musical instruments instruments[waveform + 'Musical'] = new Instrument({ allowedFrequencies: utilities.musicalFrequencies, oscillator: { waveformShape: waveform } }); // Add scaled instruments instruments[waveform + 'Major'] = new Instrument({ allowedFrequencies: utilities.getMusicalScale([1, 3, 5, 6, 8, 10, 12]), oscillator: { waveformShape: waveform } }); }); export default instruments;