11 #ifndef INDEXED_BARE_FIELD_H
12 #define INDEXED_BARE_FIELD_H
24 template<
unsigned Dim>
class NDIndex;
25 template<
class T,
unsigned Dim>
class LField;
26 template<
class T,
unsigned Dim>
class BareField;
28 template<
class T,
unsigned Dim,
unsigned Brackets>
29 std::ostream& operator<<(std::ostream&, const IndexedBareField<T,Dim,Brackets>&);
37 template<
unsigned D>
class DimTag {};
41 template<
class T,
unsigned Dim>
79 template<
unsigned D1,
class T1>
108 template<
unsigned int D2>
125 if ( (*lf_i).second->getAllocated().contains( plugged ) ) {
197 template <
class T,
unsigned Dim,
unsigned Brackets >
241 template<
class X,
unsigned Dim1,
unsigned Brackets1>
277 return Elem_t(arg,
begin());
284 return Elem_t(std::pair<int,int>(a1,a2),
begin());
297 void write(std::ostream&);
326 template <
class T,
unsigned Dim,
unsigned Brackets >
328 std::ostream& operator<<(std::ostream& out, const IndexedBareField<T,Dim,Brackets>& i) {
341 #endif // INDEXED_BARE_FIELD_H
~IndexedBareFieldIterator()
iterator MakeExpression() const
Layout_t & getLayout() const
ac_id_larray::iterator iterator_if
void GetCurrentLocation(FieldLoc< Dim > &loc) const
constexpr double e
The value of .
BareField< T, Dim > & getBareField()
const NDIndex< Dim > & getDomain() const
IndexedBareFieldIterator< T, Dim > iterator
const NDIndex< Dim > & getDomain() const
BareField< T, Dim > * MyBareField
void FillGCIfNecessary(const BareField< T1, D1 > &lhs) const
void assign(const BareField< T, Dim > &a, RHS b, OP op, ExprTag< true >)
virtual void fillGuardCells(bool reallyFill=true) const
IndexedBareField< T, Dim, Brackets+1 > operator[](const Index &idx)
IndexedBareField(BareField< T, Dim > &a, const Index &idx)
IndexedBareField< T, Dim, Brackets+1 > operator[](int i)
BareField< T, Dim > & getBareField()
IndexedBareField< T, Dim, Brackets > & operator=(const Index &x)
void write(std::ostream &)
const BareField< T, Dim > & getBareField() const
IndexedBareField< T, Dim, Brackets > & operator=(const IndexedBareField< X, Dim1, Brackets1 > &x)
PETE_TUTree< OpParens< int >, iterator > operator()(int arg)
IndexedBareFieldIterator(BareField< T, Dim > &df, const NDIndex< Dim > &idx)
constexpr double c
The velocity of light in m/s.
IndexedBareFieldIterator< T, Dim > & operator++()
IndexedBareField(BareField< T, Dim > &a, const NDIndex< Brackets-1 > &idx, const Index &i)
const BareField< T, Dim > & getBareField() const
NDIndex< Brackets > Indexes
IndexedBareField< T, Dim, Brackets+1 > operator[](const NDIndex< Dim > &ndidx)
bool isStencil(const NDIndex< D1 > &i1, const NDIndex< D2 > &i2)
IndexedBareFieldIterator()
IndexedBareField< T, Dim, Brackets > & operator=(const PETE_Expr< B > &x)
IndexedBareField< T, Dim, Brackets > & operator=(const IndexedBareField< T, Dim, Brackets > &x)
NDIndex< Dim > getDomain() const
bool plugBase(const NDIndex< D2 > &i)
const NDIndex< Dim > & getDomain() const
void SetCurrentLocation(const FieldLoc< Dim > &loc)
std::string::iterator iterator
IndexedBareField(BareField< T, Dim > &a, const NDIndex< Dim > &ndidx)
IndexedBareField(BareField< T, Dim > &a, int i)
BrickIterator & operator++()
PETE_TUTree< OpParens< std::pair< int, int > >, iterator > operator()(int a1, int a2)
BareField< T, Dim > & GetBareField()