This file is indexed.

/usr/include/trilinos/fei_CSRMat.hpp is in libtrilinos-dev 10.4.0.dfsg-1ubuntu2.

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
#ifndef _fei_CSRMat_hpp_
#define _fei_CSRMat_hpp_

/*--------------------------------------------------------------------*/
/*    Copyright 2005 Sandia Corporation.                              */
/*    Under the terms of Contract DE-AC04-94AL85000, there is a       */
/*    non-exclusive license for use of this work by or on behalf      */
/*    of the U.S. Government.  Export of this program may require     */
/*    a license from the United States Government.                    */
/*--------------------------------------------------------------------*/

#include "fei_macros.hpp"
#include "fei_FillableMat.hpp"
#include "fei_SparseRowGraph.hpp"
#include "fei_CSVec.hpp"

namespace fei {

/** Compressed Sparse Row Matrix object.
*/
class CSRMat {
 public:
  CSRMat();
  CSRMat(const FillableMat& fmat);
  virtual ~CSRMat();

  SparseRowGraph& getGraph() {return srg_;}
  const SparseRowGraph& getGraph() const {return srg_;}
 
  std::vector<double>& getPackedCoefs() {return packedcoefs_;}
  const std::vector<double>& getPackedCoefs() const {return packedcoefs_;}

  unsigned getNumRows() const {return srg_.rowNumbers.size();}

  CSRMat& operator=(const FillableMat& src);

  CSRMat& operator+=(const CSRMat& src);

  bool operator==(const CSRMat& rhs) const;

  bool operator!=(const CSRMat& rhs) const;

 private:
  SparseRowGraph srg_;
  std::vector<double> packedcoefs_;
};//class CSRMat

/** form y = A*x */
void multiply_CSRMat_CSVec(const CSRMat& A, const CSVec& x, CSVec& y);

/** form y = A^T*x */
void multiply_trans_CSRMat_CSVec(const CSRMat& A, const CSVec& x, CSVec& y);

/** form C = A*B */
void multiply_CSRMat_CSRMat(const CSRMat& A, const CSRMat& B, CSRMat& C,
                            bool storeResultZeros=false);

/** form C = A^T*B */
void multiply_trans_CSRMat_CSRMat(const CSRMat& A, const CSRMat& B, CSRMat& C,
                                  bool storeResultZeros=false);

void add_CSRMat_to_FillableMat(const CSRMat& csrm, FillableMat& fm);

}//namespace fei

#endif