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