/usr/include/dune/localfunctions/lagrange/emptypoints.hh is in libdune-localfunctions-dev 2.4.1-1.
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 | // -*- tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
// vi: set et ts=4 sw=2 sts=2:
#ifndef DUNE_LAGRANGE_EMPTYPOINTS_HH
#define DUNE_LAGRANGE_EMPTYPOINTS_HH
#include <vector>
#include <dune/common/fvector.hh>
#include <dune/localfunctions/common/localkey.hh>
namespace Dune
{
template< class F, unsigned int dim >
class LagrangePoint
{
typedef LagrangePoint< F, dim > This;
template< class, class >
friend class LagrangePointSetImpl;
public:
static const int dimension = dim;
typedef F Field;
typedef FieldVector< Field, dimension > Vector;
const Vector &point () const
{
return point_;
}
const LocalKey &localKey () const
{
return localKey_;
}
Vector point_;
LocalKey localKey_;
};
// EmptyPointSet
// --------------
template< class F, unsigned int dim >
class EmptyPointSet
{
typedef EmptyPointSet< F, dim > This;
public:
typedef F Field;
static const unsigned int dimension = dim;
typedef Dune::LagrangePoint< Field, dimension > LagrangePoint;
typedef typename std::vector< LagrangePoint >::const_iterator iterator;
protected:
EmptyPointSet ( const unsigned int order )
: order_( order )
{}
public:
const LagrangePoint &operator[] ( const unsigned int i ) const
{
assert( i < size() );
return points_[ i ];
}
iterator begin () const
{
return points_.begin();
}
iterator end () const
{
return points_.end();
}
const LocalKey &localKey ( const unsigned int i ) const
{
return (*this)[ i ].localKey();
}
unsigned int order () const
{
return order_;
}
unsigned int size () const
{
return points_.size();
}
protected:
unsigned int order_;
std::vector< LagrangePoint > points_;
};
}
#endif // DUNE_LAGRANGE_EMPTYPOINTS_HH
|