update the cpp interfaces