Integrate an external application
For an external render engine, yes. Have a look at cycles, it is actually created as an external render engine made available through a python based addon. Luxrender also utilises this to integrate with blender.

For general opengl drawing I would say no. Blender is developed to read it's own data and draw it to screen. There is the bgl module available in python to allow python scripts to draw as needed, you could get data from another application and draw in blender with this but I would not expect decent performance with anything but a very simple scene.