Is it still mandatory to have Viewer3D.h included before common.h  ? 
If not, please keep Common.h first.