@Override
 protected synchronized void delete() {
   if (swigCPtr != 0) {
     if (swigCMemOwn) {
       swigCMemOwn = false;
       SoftbodyJNI.delete_btSoftClusterCollisionShape(swigCPtr);
     }
     swigCPtr = 0;
   }
   super.delete();
 }
 @Override
 protected void finalize() throws Throwable {
   if (!destroyed) destroy();
   super.finalize();
 }
 @Override
 protected void reset(long cPtr, boolean cMemoryOwn) {
   if (!destroyed) destroy();
   super.reset(SoftbodyJNI.btSoftClusterCollisionShape_SWIGUpcast(swigCPtr = cPtr), cMemoryOwn);
 }