Add c_ptr capability and geometry type