1*4bbc92c1SBarry Smith /* $Id: petscoptions.h,v 1.40 2000/08/24 22:43:56 bsmith Exp bsmith $ */ 2f26ada1bSBarry Smith /* 337f753daSBarry Smith Routines to determine options set in the options database. 4f26ada1bSBarry Smith */ 50a835dfdSSatish Balay #if !defined(__PETSCOPTIONS_H) 60a835dfdSSatish Balay #define __PETSCOPTIONS_H 73a3b2205SBarry Smith #include "petsc.h" 83a3b2205SBarry Smith 9ca44d042SBarry Smith EXTERN int OptionsHasName(const char[],const char[],PetscTruth*); 10ca44d042SBarry Smith EXTERN int OptionsGetInt(const char[],const char [],int *,PetscTruth*); 11ca44d042SBarry Smith EXTERN int OptionsGetLogical(const char[],const char [],PetscTruth *,PetscTruth*); 12ca44d042SBarry Smith EXTERN int OptionsGetDouble(const char[],const char[],double *,PetscTruth*); 13ca44d042SBarry Smith EXTERN int OptionsGetScalar(const char[],const char[],Scalar *,PetscTruth*); 14ca44d042SBarry Smith EXTERN int OptionsGetIntArray(const char[],const char[],int[],int *,PetscTruth*); 15ca44d042SBarry Smith EXTERN int OptionsGetDoubleArray(const char[],const char[],double[],int *,PetscTruth*); 16ca44d042SBarry Smith EXTERN int OptionsGetString(const char[],const char[],char[],int,PetscTruth*); 17ca44d042SBarry Smith EXTERN int OptionsGetStringArray(const char[],const char[],char**,int*,PetscTruth*); 183a3b2205SBarry Smith 19ca44d042SBarry Smith EXTERN int OptionsSetAlias(const char[],const char[]); 20ca44d042SBarry Smith EXTERN int OptionsSetValue(const char[],const char[]); 21ca44d042SBarry Smith EXTERN int OptionsClearValue(const char[]); 223a3b2205SBarry Smith 23ca44d042SBarry Smith EXTERN int OptionsAllUsed(int *); 24ca44d042SBarry Smith EXTERN int OptionsLeft(void); 25ca44d042SBarry Smith EXTERN int OptionsPrint(FILE *); 264b0e389bSBarry Smith 27ca44d042SBarry Smith EXTERN int OptionsCreate(void); 28ca44d042SBarry Smith EXTERN int OptionsInsert(int *,char ***,const char[]); 29ca44d042SBarry Smith EXTERN int OptionsInsertFile(const char[]); 30ca44d042SBarry Smith EXTERN int OptionsDestroy(void); 315d0dffe5SBarry Smith 32ca44d042SBarry Smith EXTERN int OptionsReject(const char[],const char[]); 33ca44d042SBarry Smith EXTERN int OptionsGetAll(char*[]); 345d0dffe5SBarry Smith 35ca44d042SBarry Smith EXTERN int OptionsGetenv(MPI_Comm,const char *,char[],int,PetscTruth *); 36ca44d042SBarry Smith EXTERN int OptionsAtoi(const char[],int*); 37ca44d042SBarry Smith EXTERN int OptionsAtod(const char[],double*); 382e8a6d31SBarry Smith 39186905e3SBarry Smith extern PetscTruth OptionsPublish; 40186905e3SBarry Smith extern int OptionsPublishCount; 41186905e3SBarry Smith #define OptionsBegin(comm,prefix,mess) 0; {\ 42*4bbc92c1SBarry Smith for (OptionsPublishCount=(OptionsPublish?-1:1); OptionsPublishCount<2; OptionsPublishCount++) {\ 43186905e3SBarry Smith int __ierr = OptionsBegin_Private(comm,prefix,mess);CHKERRQ(__ierr); 44186905e3SBarry Smith #define OptionsEnd() __ierr = OptionsEnd_Private();CHKERRQ(__ierr);}} 45186905e3SBarry Smith EXTERN int OptionsBegin_Private(MPI_Comm,char*,char*); 46186905e3SBarry Smith EXTERN int OptionsEnd_Private(void); 47*4bbc92c1SBarry Smith EXTERN int OptionsHead(char*); 48*4bbc92c1SBarry Smith #define OptionsTail() 0; {if (OptionsPublishCount != 1) PetscFunctionReturn(0);} 49186905e3SBarry Smith 50186905e3SBarry Smith EXTERN int OptionsInt(char*,char*,char*,int,int*,PetscTruth*); 51186905e3SBarry Smith EXTERN int OptionsDouble(char*,char*,char*,double,double*,PetscTruth*); 52186905e3SBarry Smith EXTERN int OptionsScalar(char*,char*,char*,Scalar,Scalar*,PetscTruth*); 53186905e3SBarry Smith EXTERN int OptionsName(char*,char*,char*,PetscTruth*); 54186905e3SBarry Smith EXTERN int OptionsString(char*,char*,char*,char*,char*,int,PetscTruth*); 55186905e3SBarry Smith EXTERN int OptionsLogical(char*,char*,char*,PetscTruth,PetscTruth*,PetscTruth*); 56186905e3SBarry Smith EXTERN int OptionsLogicalGroupBegin(char*,char*,char*,PetscTruth*); 57186905e3SBarry Smith EXTERN int OptionsLogicalGroup(char*,char*,char*,PetscTruth*); 58186905e3SBarry Smith EXTERN int OptionsLogicalGroupEnd(char*,char*,char*,PetscTruth*); 59186905e3SBarry Smith EXTERN int OptionsList(char*,char*,char*,FList,char*,char*,int,PetscTruth*); 60186905e3SBarry Smith EXTERN int OptionsEList(char*,char*,char*,char**,int,char*,char *,int,PetscTruth*); 61*4bbc92c1SBarry Smith EXTERN int OptionsDoubleArray(char*,char*,char*,double[],int*,PetscTruth*); 62*4bbc92c1SBarry Smith EXTERN int OptionsStringArray(char*,char*,char*,char**,int*,PetscTruth*); 633a3b2205SBarry Smith #endif 64*4bbc92c1SBarry Smith 65*4bbc92c1SBarry Smith 66