#include "petscpartitioner.h" PetscErrorCode PetscPartitionerRegister(const char sname[], PetscErrorCode (*function)(PetscPartitioner))Not Collective
| name | - The name of a new user-defined creation routine | |
| create_func | - The creation routine itself | 
    PetscPartitionerRegister("my_part", MyPetscPartitionerCreate);
Then, your PetscPartitioner type can be chosen with the procedural interface via
    PetscPartitionerCreate(MPI_Comm, PetscPartitioner *);
    PetscPartitionerSetType(PetscPartitioner, "my_part");
or at runtime via the option
    -petscpartitioner_type my_part