How can i make sure that main() is executed after success?
I just can't figure that out.
if (navigator.requestMIDIAccess) {
navigator.requestMIDIAccess()
.then(success, failure);
}
function failure () {
console.error('No access to your midi devices.'+ + msg )
}
function success (midi) {
mid=midi;
inputs = midi.inputs.values();
outputs = midi.outputs.values();
// inputs outputs are Iterators
for (output = outputs.next(); output && !output.done; output = outputs.next()) {
var deviceOut =
output.value.name;
console.log(deviceOut);
var optout = document.createElement("option");
optout.text = deviceOut;
document.getElementById("out_portsel").add(optout);
}
for (input = inputs.next(); input && !input.done; input = inputs.next()) {
var deviceIn =
input.value.name;
var optin = document.createElement("option");
optin.text = deviceIn;
document.getElementById("in_portsel").add(optin);
// each time there is a midi message call the onMIDIMessage function
input.value.onmidimessage = onMIDIMessage;
}
}
function main(){
Rstarttime=performance.now();
document.getElementById("out_portsel").selectedIndex = outportindex;
makeTrack();
setTrack();
listTrackData();
changeProgram();
}