DOCQ OS2 ,rewrite from https://github.com/docqstudio/docqos,use C++ instead of C