This file is indexed.

/usr/include/trilinos/ml_csolve.h is in libtrilinos-ml-dev 12.12.1-5.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
/* ******************************************************************** */
/* See the file COPYRIGHT for a complete copyright notice, contact      */
/* person and disclaimer.                                               */
/* ******************************************************************** */

/* ******************************************************************** */
/* Declaration of the ML_CSolve structure                               */
/* ******************************************************************** */
/* Author        : Charles Tong (LLNL) and Raymond Tuminaro (SNL)       */
/* Date          : March, 1999                                          */
/* ******************************************************************** */

#ifndef __MLCSOLVE__
#define __MLCSOLVE__

/* ******************************************************************** */
/* data structure type definition                                       */
/* ******************************************************************** */

typedef struct ML_CSolveFunc_Struct ML_CSolveFunc;
typedef struct ML_CSolve_Struct ML_CSolve;

/* ******************************************************************** */
/* local include files                                                  */
/* ******************************************************************** */

#include "ml_common.h"
#include "ml_defs.h"
#include "ml_memory.h"
#include "ml_1level.h"
#include "ml_solver.h"

#ifdef WKC
#include <Epetra_MultiVector.h>
#endif

/* ******************************************************************** */
/* data definition for the ML_CSolve Class                              */
/* ******************************************************************** */
/* -------------------------------------------------------------------- */
/* These data structures define the coarse solver object.               */
/* -------------------------------------------------------------------- */

struct ML_CSolveFunc_Struct
{
   int ML_id;
   int (*func_ptr)(ML_Solver *, int, double *, int, double *);
};

struct ML_CSolve_Struct
{
   int                     ML_id;
   struct ML_1Level_Struct *my_level;
   int                     ntimes;
   double                  tol;
   ML_CSolveFunc           *func;
   void                    *data;
   void                    (*data_destroy)(void *);
   double                  build_time, apply_time;
   char                    *label;
};

/* ******************************************************************** */
/* ******************************************************************** */
/*      User Interface Proto-types                                      */
/* ******************************************************************** */
/* ******************************************************************** */

#ifndef ML_CPP
#ifdef __cplusplus
extern "C" {
#endif
#endif
extern int ML_CSolve_Create(ML_CSolve **);
extern int ML_CSolve_Set_Label(ML_CSolve *, char *label);
extern int ML_CSolve_Init(ML_CSolve *);
extern int ML_CSolve_Destroy(ML_CSolve **);
extern int ML_CSolve_Clean(ML_CSolve *);
extern int ML_CSolve_Check(ML_CSolve *);
extern int ML_CSolve_Set_1Level(ML_CSolve *, ML_1Level *);
extern int ML_CSolve_Apply(ML_CSolve *, int, double *, int, double *);

#ifdef WKC
/* WKC -- Added prototype */
extern int ML_CSolve_Apply(ML_CSolve *, int, Epetra_MultiVector &, int,
                           Epetra_MultiVector &);
#endif

extern int ML_CSolve_Aggr(ML_Solver *, int, double *, int, double *);
extern int ML_CSolve_Clean_Aggr(void *, ML_CSolveFunc *);

#ifndef ML_CPP
#ifdef __cplusplus
}
#endif
#endif

#endif