Actual source code: tao_general.h

  1: /*
  2:    This is the a main TAO include file (for C and C++).  It is included
  3:    in other TAO include files such as "tao_solver.h", so TAO applications and
  4:    solvers almost never have to specifically include it.  It should be
  5:    included when extending the TaoVec, TaoMat, TaoIndexSet, TaoLinearSolver,
  6:    or TaoApplication class.
  7: */


 12: /* ========================================================================== */
 13: /* 
 14:    Current TAO version number and release date
 15: */
 16: #include "tao_version.h"

 18: /* ========================================================================== */

 20: /* 
 21:    TAO logging/profiling information
 22: */
 23: /* #include "tao_log.h" */
 24: #include "tao_log.h"
 25: /* ========================================================================== */


 28: /*  
 29:    TAO utilities for basic system-level portability. 
 30:    such as collecting runtime options, printing, registering solvers,
 31:    error handling macros, memory management, strings.
 32: */
 33: #include "tao_sys.h"
 34: /* Determine this basic functionality at compile time */
 35: /* Use PETSc for this functionality */

 37: #define  TAO_USE_PETSC

 39: #ifdef TAO_NO_PETSC
 40: #undef TAO_USE_PETSC 
 41: #endif

 43: #ifdef TAO_USE_PETSC
 44: #include "src/petsctao/include/tao_pkernal.h"
 45: #endif

 47: /* In a uniprocessor environment, PETSc does not have to be used for this kind of support */
 48: #ifndef TAO_USE_PETSC
 49: #include "src/sys/tao_unigeneral.h"
 50: #endif

 52: #endif