PETSc version 3.17.0
Fix/Edit manual page

# PetscInfoSetClasses

Sets the classes which PetscInfo() is filtered for/against

### Synopsis

    #include "petscsys.h"
    PetscErrorCode PetscInfoSetClasses(PetscBool exclude, PetscInt N, const char *const *classnames)

Not Collective

### Input Parameters

| exclude | - Whether or not to invert the filter, i.e. if exclude is true, PetscInfo() will print from every class that is NOT one of the classes specified
| N | - Number of classes to filter for (size of classnames)
| classnames | - String array containing the names of classes to filter for, e.g. "vec"

### Notes

Not for use in Fortran

This function CANNOT be called after PetscInfoGetClass() or PetscInfoProcessClass() has been called.

Names in the classnames list should correspond to the names returned by PetscObjectGetClassName().

This function only sets the list of class names. The actual filtering is deferred to PetscInfoProcessClass(), except of sys which is processed right away. The reason for this is that we need to set the list of included/excluded classes before their classids are known. Typically the classid is assigned and PetscInfoProcessClass() called in <Class>InitializePackage() (e.g. VecInitializePackage()).

### See Also

PetscInfo(), PetscInfoGetClass(), PetscInfoProcessClass(), PetscInfoSetFromOptions(), PetscStrToArray(), PetscObjectGetName()

### Level

developer

### Location

src/sys/info/verboseinfo.c
Index of all Profiling routines
Table of Contents for all manual pages
Index of all manual pages