The program is C++ but includes C headers and uses extern "C" clauses around the ExternalMetro class.