Actual source code: loghandlerimpl.h
1: #pragma once
3: #include <petsc/private/petscimpl.h>
5: typedef struct _PetscLogHandlerOps *PetscLogHandlerOps;
6: struct _PetscLogHandlerOps {
7: PetscErrorCode (*destroy)(PetscLogHandler);
8: PetscErrorCode (*eventbegin)(PetscLogHandler, PetscLogEvent, PetscObject, PetscObject, PetscObject, PetscObject);
9: PetscErrorCode (*eventend)(PetscLogHandler, PetscLogEvent, PetscObject, PetscObject, PetscObject, PetscObject);
10: PetscErrorCode (*eventsync)(PetscLogHandler, PetscLogEvent, MPI_Comm);
11: PetscErrorCode (*objectcreate)(PetscLogHandler, PetscObject);
12: PetscErrorCode (*objectdestroy)(PetscLogHandler, PetscObject);
13: PetscErrorCode (*stagepush)(PetscLogHandler, PetscLogStage);
14: PetscErrorCode (*stagepop)(PetscLogHandler, PetscLogStage);
15: PetscErrorCode (*view)(PetscLogHandler, PetscViewer);
16: };
18: struct _p_PetscLogHandler {
19: PETSCHEADER(struct _PetscLogHandlerOps);
20: PetscLogState state;
21: void *data;
22: };
24: PETSC_INTERN PetscErrorCode PetscLogHandlerPackageInitialize(void);
25: PETSC_INTERN PetscErrorCode PetscLogHandlerLogObjectState_Internal(PetscLogHandler, PetscObject, const char *, va_list);