C++ wrapper