This file is indexed.

/usr/include/deal.II/multigrid/mg_dof_handler.h is in libdeal.ii-dev 8.1.0-4.

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
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
// ---------------------------------------------------------------------
// $Id: mg_dof_handler.h 30036 2013-07-18 16:55:32Z maier $
//
// Copyright (C) 1998 - 2013 by the deal.II authors
//
// This file is part of the deal.II library.
//
// The deal.II library is free software; you can use it, redistribute
// it, and/or modify it under the terms of the GNU Lesser General
// Public License as published by the Free Software Foundation; either
// version 2.1 of the License, or (at your option) any later version.
// The full text of the license can be found in the file LICENSE at
// the top level of the deal.II distribution.
//
// ---------------------------------------------------------------------

#ifndef __deal2__mg_dof_handler_h
#define __deal2__mg_dof_handler_h

//TODO: MgDoFHandler should be marked deprecated, but is used everywhere...
//#warning MGDoFHandler is deprecated

#include <deal.II/base/config.h>
#include <deal.II/dofs/dof_handler.h>
//#include <deal.II/multigrid/mg_dof_iterator_selector.h>

DEAL_II_NAMESPACE_OPEN


namespace internal
{
  namespace MGDoFHandler
  {
    struct Implementation;
  }
}


/*!@addtogroup mg */
/*@{*/


/**
 * @deprecated All functionality of this class has been moved to
 * DoFHandler. Thus, this class is only a wrapper left in the library
 * for compatibility reasons.
 *
 * This class manages degrees of freedom for a multilevel hierarchy of
 * grids. It does mostly the same as does the @p DoDHandler class,
 * but it uses a separate enumeration of the degrees of freedom on
 * each level. For example, a vertex has several DoF numbers, one for
 * each level of the triangulation on which it exists.
 *
 * @todo This class has not yet been implemented for the use in the codimension
 * one case (<tt>spacedim != dim </tt>).
 *
 * @ingroup dofs
 * @author Wolfgang Bangerth, 1998, 1999 Markus Bürg, Timo Heister, Guido Kanschat, 2012
 */
template <int dim, int spacedim=dim>
class MGDoFHandler : public DoFHandler<dim,spacedim>
{
  typedef dealii::internal::DoFHandler::Iterators<DoFHandler<dim,spacedim>, true> IteratorSelector;
public:
  typedef typename IteratorSelector::CellAccessor cell_accessor;
  typedef typename IteratorSelector::FaceAccessor face_accessor;

  typedef typename IteratorSelector::raw_line_iterator raw_line_iterator;
  typedef typename IteratorSelector::line_iterator line_iterator;
  typedef typename IteratorSelector::active_line_iterator active_line_iterator;

  typedef typename IteratorSelector::quad_iterator quad_iterator;
  typedef typename IteratorSelector::active_quad_iterator active_quad_iterator;

  typedef typename IteratorSelector::hex_iterator hex_iterator;
  typedef typename IteratorSelector::active_hex_iterator active_hex_iterator;

  typedef typename IteratorSelector::cell_iterator cell_iterator;
  typedef typename IteratorSelector::active_cell_iterator active_cell_iterator;

  typedef typename IteratorSelector::face_iterator face_iterator;
  typedef typename IteratorSelector::active_face_iterator active_face_iterator;

  /**
   * Make the dimension and the space_dimension available
   * in function templates.
   */
  static const unsigned int dimension = dim;

  static const unsigned int space_dimension = spacedim;

  /**
   * Default constructor, which
   * will require a call to
   * initialize() later to set the Triangulation.
   */
  MGDoFHandler ();

  /**
   * Constructor. Take @p tria as
   * the triangulation to work on.
   */
  MGDoFHandler (const Triangulation<dim, spacedim> &tria);

  /**
   * Destructor
   */
  virtual ~MGDoFHandler ();

  /**
   * Go through the triangulation
   * and distribute the degrees of
   * freedoms needed for the given
   * finite element according to
   * the given distribution
   * method. We first call the
   * DoFHandler's function
   * and then distribute the
   * levelwise numbers.
   *
   * A copy of the transferred
   * finite element is stored.
   */
  virtual void distribute_dofs (const FiniteElement<dim,spacedim> &);

  /**
   *  @name Cell iterator functions
   */
  /*@{*/
  /**
   * Iterator to the first used
   * cell on level @p level.
   */
  cell_iterator        begin       (const unsigned int level = 0) const;

  /**
   * Iterator past the end; this
   * iterator serves for
   * comparisons of iterators with
   * past-the-end or
   * before-the-beginning states.
   */
  cell_iterator        end () const;

  /**
   * Return an iterator which is
   * the first iterator not on
   * level. If @p level is the
   * last level, then this returns
   * <tt>end()</tt>.
   */
  cell_iterator        end (const unsigned int level) const;

  //@}

} DEAL_II_DEPRECATED;

/*@}*/


DEAL_II_NAMESPACE_CLOSE


#endif