1*a4963045SJacob Faibussowitsch #pragma once 2f918ec44SMatthew G. Knepley 3f918ec44SMatthew G. Knepley #include <petscdm.h> 4f918ec44SMatthew G. Knepley 5f918ec44SMatthew G. Knepley #if defined(PETSC_HAVE_LIBCEED) 6f918ec44SMatthew G. Knepley #include <ceed.h> 7f918ec44SMatthew G. Knepley 85f80ce2aSJacob Faibussowitsch #if defined(PETSC_CLANG_STATIC_ANALYZER) 93ba16761SJacob Faibussowitsch void PetscCallCEED(CeedErrorType); 105f80ce2aSJacob Faibussowitsch #else 119566063dSJacob Faibussowitsch #define PetscCallCEED(...) \ 12a2c9b50fSJeremy L Thompson do { \ 133ba16761SJacob Faibussowitsch CeedErrorType ierr_ceed_ = __VA_ARGS__; \ 145f80ce2aSJacob Faibussowitsch PetscCheck(ierr_ceed_ == CEED_ERROR_SUCCESS, PETSC_COMM_SELF, PETSC_ERR_LIB, "libCEED error: %s", CeedErrorTypes[ierr_ceed_]); \ 15a2c9b50fSJeremy L Thompson } while (0) 165f80ce2aSJacob Faibussowitsch #endif /* PETSC_CLANG_STATIC_ANALYZER */ 179566063dSJacob Faibussowitsch #define CHKERRQ_CEED(...) PetscCallCEED(__VA_ARGS__) 18a2c9b50fSJeremy L Thompson 19f918ec44SMatthew G. Knepley PETSC_EXTERN PetscErrorCode DMGetCeed(DM, Ceed *); 20a2c9b50fSJeremy L Thompson 21f918ec44SMatthew G. Knepley #endif 22