# these include enums

# petscao.h
nativeptr AO

# petscbag.h
nativeptr PetscBag

# petscdt.h
native    PetscDTNodeType

# petscdm.h
native    DMBoundaryType
native    DMPointLocationType
native    DMAdaptationType
native    DMAdaptFlag
native    PetscUnit
native    DMAdaptationStrategy
native    DMDirection
native    DMEnclosureType
native    DMPolytopeType
native    DMCopyLabelsMode
native    DMReorderDefaultFlag

nativeptr DM

nativeptr DMAdaptor
nativeptr PetscQuadrature
nativeptr PetscWeakForm
nativeptr PetscDS
nativeptr PetscFE
nativeptr PetscSpace
nativeptr PetscDualSpace
nativeptr PetscFV
nativeptr PetscLimiter
nativeptr PetscPartitioner
nativeptr DMField

nativeptr DMPlexTransform

# dmda.h
native    DMDAStencilType

native    DMDALocalInfo

native    DMDAInterpolationType
native    DMDAElementType

nativeptr PetscGLL

# dmlabel.h
nativeptr DMLabel

# dmnetwork.h
nativeptr DMNetworkMonitor

# dmplex.h
native    DMPlexInterpolatedFlag
native    DMPlexTPSType

# dmswarm.h
native    DMSwarmType
native    DMSwarmMigrateType
native    DMSwarmCollectType
native    DMSwarmPICLayoutType

# petscdraw.h
nativeptr PetscDraw
nativeptr PetscDrawLG
nativeptr PetscDrawAxis
nativeptr PetscDrawSP
nativeptr PetscDrawHG
nativeptr PetscDrawMesh
native    PetscDrawButton
native    PetscDrawMarkerType
nativeptr PetscDrawBar

# petscis.h
nativeptr IS
nativeptr ISColoring
nativeptr PetscSection
nativeptr PetscSectionSym

nativeptr PetscSF
nativeptr PetscLayout
native    ISInfo
native    ISInfoType
nativeptr ISLocalToGlobalMapping
native    ISGlobalToLocalMappingMode
native    ISColoringType

# petscksp.h
nativeptr KSP
native    KSPGuess
native    KSPCGType
native    KSPFCDTruncationType
native    KSPConvergedReason
native    KSPNormType
native    KSPGMRESCGSRefinementType
native    MatSchurComplementAinvType
native    MatLMVMSymBroydenScaleType
native    KSPHPDDMType

# petsclog.h

# petscmat.h
nativeptr Mat
nativeptr MatNullSpace
nativeptr MatFDColoring

nativeptr MatColoring
nativeptr MatPartitioning
nativeptr MatCoarsen
nativeptr MatAIJIndices
native    MatOption
native    MatCreateSubMatrixOption
native    MPChacoGlobalType
native    MPChacoLocalType
native    MPChacoEigenType
native    MPPTScotchStragegyType
native    MatAssemblyType
native    MatFactorType
native    MatFactorError
native    MatFactorShiftType
native    MatProductType
native    MatFactorSchurStatus
native    MatSORType
native    MatInfoType
native    MatReuse
native    MatOperation
native    MatInfo
native    MatFactorInfo
native    MatDuplicateOption
native    MatStructure
native    MatCompositeType
native    MatCompositeMergeType
native    MatStencil

native    MatCUSPARSEStorageFormat
native    MatCUSPARSEFormatOperation

native    MatSTRUMPACKReordering
native    MatSTRUMPACKCompressionType

# petscpc.h
nativeptr PC

native    PCSide
native    PCJacobiType
native    PCASMType
native    PCGASMType
native    PCCompositeType
native    PCRichardsonConvergedReason
native    PCFieldSplitSchurPreType
native    PCPARMSGlobalType
native    PCPARMSLocalType
native    PCFieldSplitSchurFactType
native    CoarseProblemType
native    PCGAMGLayoutType
native    PCHPDDMCoarseCorrectionType

native    PCMGType
native    PCMGCycleType
native    PCMGGalerkinType
native    PCExoticType
native    PCDeflationSpaceType
native    PCBDDCInterfaceExtType
native    PCFailedReason

# petscsnes.c
nativeptr SNES
nativeptr PetscConvEst

native    SNESConvergedReason
native    SNESLineSearchReason
nativeptr MatMFFD
nativeptr MatMFFDType
nativeptr SNESLineSearch
native    SNESLineSearchOrder
native    SNESNormSchedule
native    SNESQNType
native    SNESQNRestartType
native    SNESQNCompositionType
native    SNESQNScaleType
native    SNESNCGType
native    SNESNGMRESRestartType
native    SNESNGMRESSelectType
native    SNESNewtonTRFallbackType

# petscsnesfas.h
native    SNESFASType

# petsctao.h
nativeptr Tao
nativeptr TaoLineSearch
native    TaoConvergedReason
native    TaoADMMUpdateType
native    TaoADMMRegularizerType
native    TaoALMMType

# petscsys.h
native    PetscBool
native    PetscBool3
native    PetscOffset
native    PetscFortranAddr
native    PetscCount

native    PetscInt
native    PetscInt64
native    PetscObjectState
native    PetscObjectId
native    PetscFortranInt

native    PetscSizeT

native    PetscMPIInt

native    PetscEnum
native    PetscErrorCode
native    PetscClassId
native    PetscLogEvent
native    PetscLogStage
native    PetscVoid

native    PetscCopyMode

native    PetscDataType
native    PetscFPTrap

native    PetscFortranFloat
native    PetscFortranDouble
native    PetscFortranLongDouble
native    PetscFortranComplex
native    PetscComplex
native    PetscScalar
native    PetscReal


native    MatScalar
native    PetscObject
native    PetscLogDouble

nativeptr PetscMatlabEngine
nativeptr PetscRandom
nativeptr PetscBench
native    PetscBinarySeekType

native    PetscBuildTwoSidedType

nativeptr PetscSubcomm
native    PetscSubcommType

nativeptr PetscOptions

nativeptr PetscFunctionList

native    PetscInfoCommFlag


# petscts.h
nativeptr TS
nativeptr TSAdapt
nativeptr TSTrajectory

native    TSEquationType
native    TSConvergedReason
native    TSExactFinalTimeOption
native    TSSundialsType
native    TSProblemType
native    TSSundialsGramSchmidtType
native    TSSundialsLmmType

# petscvec.h
nativeptr Vec
nativeptr VecScatter
nativeptr VecTagger

native    NormType
native    ReductionType
native    InsertMode
native    ScatterMode
native    VecOption
native    VecOperation
native    VecTaggerCDFMethod
native    PetscOffloadMask

# petscviewer.h
nativeptr PetscViewer

nativeptr PetscViewerAndFormat

nativeptr PetscViewers
native    PetscFileMode
native    PetscViewerFormat
