Play MIDI through Default Analog Audio Output

I am experienced c++ programmer, but don’t want to reinvent a wheel, want take ready-made components as far as it possible.
My main question is absolutely concrete.

“Why c++?” … people ask so many questions when they don’t know asnwer, and ask nothing when know…

Answer to my question may be: “you can take that piano-roll GUI table class + that MIDI file reader class + that MIDI playback + pitch detection”. As for pitch detection, I can use aubio.

I can describe what I have already found, but then I will answer myself:

Open JUCE audio plugin example + use MidiFile + use Playing a MIDI file (revisited) + use aubio + see Tracktion Engine…

At the start of my search I don’t even know how the main things are called.

At the moment no idea where is Midi Table Editor GUI class…

There is a difference between looking for an answer from scratch and not from scratch. Any answer that help me to go further than scratch will be helpful.