1 #pragma once 2 3 #include <petscbm.h> 4 5 struct _PetscBenchOps { 6 PetscErrorCode (*setfromoptions)(PetscBench, PetscOptionItems); 7 PetscErrorCode (*setup)(PetscBench); 8 PetscErrorCode (*run)(PetscBench); 9 PetscErrorCode (*view)(PetscBench, PetscViewer); 10 PetscErrorCode (*reset)(PetscBench); 11 PetscErrorCode (*destroy)(PetscBench); 12 }; 13 14 struct _p_PetscBench { 15 PETSCHEADER(struct _PetscBenchOps); 16 PetscBool setupcalled; 17 PetscInt size; 18 PetscLogHandler lhdlr; 19 void *data; 20 }; 21