xref: /petsc/src/vec/pf/pfimpl.h (revision dd39464377b3cc140daefda4bde003dba2392150)
1292f8084SBarry Smith 
2292f8084SBarry Smith #ifndef _PFIMPL
3292f8084SBarry Smith #define _PFIMPL
4292f8084SBarry Smith 
5292f8084SBarry Smith #include "petscpf.h"
6292f8084SBarry Smith 
7292f8084SBarry Smith typedef struct _PFOps *PFOps;
8292f8084SBarry Smith struct _PFOps {
9*dd394643SJed Brown   PetscErrorCode (*apply)(void*,PetscInt,const PetscScalar*,PetscScalar*);
10292f8084SBarry Smith   PetscErrorCode (*applyvec)(void*,Vec,Vec);
11292f8084SBarry Smith   PetscErrorCode (*destroy)(void*);
12292f8084SBarry Smith   PetscErrorCode (*view)(void*,PetscViewer);
13292f8084SBarry Smith   PetscErrorCode (*setfromoptions)(PF);
14292f8084SBarry Smith };
15292f8084SBarry Smith 
16292f8084SBarry Smith struct _p_PF {
17011f5a45SSatish Balay   PETSCHEADER(struct _PFOps);
18292f8084SBarry Smith   PetscInt dimin,dimout;             /* dimension of input and output spaces */
19292f8084SBarry Smith   void     *data;
20292f8084SBarry Smith };
21292f8084SBarry Smith 
22292f8084SBarry Smith #endif
23