This file is indexed.

/usr/include/dune/grid/io/file/vtk/volumeiterators.hh is in libdune-grid-dev 2.2.1-2.

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
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
// -*- tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*-
// vi: set et ts=8 sw=2 sts=2:

#ifndef DUNE_GRID_IO_FILE_VTK_VOLUMEITERATORS_HH
#define DUNE_GRID_IO_FILE_VTK_VOLUMEITERATORS_HH

#include <dune/grid/common/gridenums.hh>

#include <dune/grid/io/file/vtk/corner.hh>
#include <dune/grid/io/file/vtk/corneriterator.hh>
#include <dune/grid/io/file/vtk/functionwriter.hh>
#include <dune/grid/io/file/vtk/pointiterator.hh>

namespace Dune {
  //! \addtogroup VTK
  //! \{

  namespace VTK {

    template<typename GV>
    class ConformingVolumeIteratorFactory {
      const GV& gv;

      typedef typename GV::IndexSet IndexSet;
      const IndexSet& indexSet() const { return gv.indexSet(); }
      friend class ConformingConnectivityWriter<
        ConformingVolumeIteratorFactory<GV> >;

    public:
      static const unsigned dimCell = GV::dimension;

      typedef typename GV::template Codim<0>::Entity Cell;
      typedef typename GV::template Codim<0>::
        template Partition<InteriorBorder_Partition>::Iterator CellIterator;

      typedef VTK::Corner<Cell> Corner;
      typedef VTK::CornerIterator<CellIterator> CornerIterator;

      typedef VTK::Corner<Cell> Point;
      typedef VTK::PointIterator<CellIterator,
                                 typename GV::IndexSet> PointIterator;

      typedef ConformingConnectivityWriter<ConformingVolumeIteratorFactory<GV>
                                           > ConnectivityWriter;
      typedef typename GV::CollectiveCommunication CollectiveCommunication;

      explicit ConformingVolumeIteratorFactory(const GV& gv_)
        : gv(gv_)
      { }

      CellIterator beginCells() const {
        return gv.template begin<0, InteriorBorder_Partition>();
      }
      CellIterator endCells() const {
        return gv.template end<0, InteriorBorder_Partition>();
      }

      CornerIterator beginCorners() const {
        return CornerIterator(beginCells(), endCells());
      }
      CornerIterator endCorners() const {
        return CornerIterator(endCells());
      }

      PointIterator beginPoints() const {
        return PointIterator(beginCells(), endCells(), gv.indexSet());
      }
      PointIterator endPoints() const {
        return PointIterator(endCells());
      }

      ConnectivityWriter makeConnectivity() const {
        return ConnectivityWriter(*this);
      }
      const CollectiveCommunication& comm() const {
        return gv.comm();
      }
    };

    template<typename GV>
    class NonConformingVolumeIteratorFactory {
      const GV& gv;

    public:
      static const unsigned dimCell = GV::dimension;

      typedef typename GV::template Codim<0>::Entity Cell;
      typedef typename GV::template Codim<0>::
        template Partition<InteriorBorder_Partition>::Iterator CellIterator;

      typedef VTK::Corner<Cell> Corner;
      typedef VTK::CornerIterator<CellIterator> CornerIterator;

      typedef Corner Point;
      typedef CornerIterator PointIterator;

      typedef NonConformingConnectivityWriter<Cell> ConnectivityWriter;
      typedef typename GV::CollectiveCommunication CollectiveCommunication;

      explicit NonConformingVolumeIteratorFactory(const GV& gv_)
        : gv(gv_)
      { }

      CellIterator beginCells() const {
        return gv.template begin<0, InteriorBorder_Partition>();
      }
      CellIterator endCells() const {
        return gv.template end<0, InteriorBorder_Partition>();
      }

      CornerIterator beginCorners() const {
        return CornerIterator(beginCells(), endCells());
      }
      CornerIterator endCorners() const {
        return CornerIterator(endCells());
      }

      PointIterator beginPoints() const { return beginCorners(); }
      PointIterator endPoints() const { return endCorners(); }

      ConnectivityWriter makeConnectivity() const {
        return ConnectivityWriter();
      }
      const CollectiveCommunication& comm() const {
        return gv.comm();
      }
    };

  } // namespace VTK

  //! \} group VTK

} // namespace Dune

#endif // DUNE_GRID_IO_FILE_VTK_VOLUMEITERATORS_HH