xref: /petsc/src/vec/pf/pfimpl.h (revision 26fbe8dc1a3c99fb8dddfa572c8c6b3b4ce3ca53)
1 
2 #if !defined(_PFIMPL)
3 #define _PFIMPL
4 
5 #include <petscpf.h>
6 
7 typedef struct _PFOps *PFOps;
8 struct _PFOps {
9   PetscErrorCode (*apply)(void*,PetscInt,const PetscScalar*,PetscScalar*);
10   PetscErrorCode (*applyvec)(void*,Vec,Vec);
11   PetscErrorCode (*destroy)(void*);
12   PetscErrorCode (*view)(void*,PetscViewer);
13   PetscErrorCode (*setfromoptions)(PF);
14 };
15 
16 struct _p_PF {
17   PETSCHEADER(struct _PFOps);
18   PetscInt dimin,dimout;             /* dimension of input and output spaces */
19   void     *data;
20 };
21 
22 #endif
23