31#ifndef _OPALX_FIELDS_MESH_H_
32#define _OPALX_FIELDS_MESH_H_
311#include "Fields/Interpolation/Mesh-inl.icc"
std::vector< int > state_m
friend Mesh::Iterator & operator-=(Mesh::Iterator &lhs, const int &difference)
friend bool operator>(const Mesh::Iterator &lhs, const Mesh::Iterator &rhs)
friend Mesh::Iterator operator-(const Mesh::Iterator &lhs, const int &difference)
friend Mesh::Iterator & operator++(Mesh::Iterator &lhs)
virtual void addState(const Mesh::Iterator &it)
friend bool operator<(const Mesh::Iterator &lhs, const Mesh::Iterator &rhs)
virtual std::vector< double > getPosition() const
Iterator(const Mesh::Iterator &in)
friend bool operator!=(const Mesh::Iterator &lhs, const Mesh::Iterator &rhs)
virtual void getPosition(double *point) const
friend Mesh::Iterator operator-(const Mesh::Iterator &lhs, const Mesh::Iterator &rhs)
virtual bool isOutOfBounds() const
friend Mesh::Iterator & operator--(Mesh::Iterator &lhs)
Iterator(std::vector< int > state, const Mesh *mesh)
friend Mesh::Iterator & operator+=(Mesh::Iterator &lhs, const Mesh::Iterator &rhs)
friend bool operator==(const Mesh::Iterator &lhs, const Mesh::Iterator &rhs)
const int & operator[](int i) const
friend bool operator<=(const Mesh::Iterator &lhs, const Mesh::Iterator &rhs)
friend Mesh::Iterator operator--(Mesh::Iterator &lhs, int)
std::vector< int > getState() const
friend Mesh::Iterator operator+(const Mesh::Iterator &lhs, const Mesh::Iterator &rhs)
friend Mesh::Iterator operator+(const Mesh::Iterator &lhs, const int &difference)
friend Mesh::Iterator & operator+=(Mesh::Iterator &lhs, const int &difference)
friend Mesh::Iterator & operator-=(Mesh::Iterator &lhs, const Mesh::Iterator &rhs)
const Mesh::Iterator & operator=(const Mesh::Iterator &rhs)
friend bool operator>=(const Mesh::Iterator &lhs, const Mesh::Iterator &rhs)
const Mesh * getMesh() const
friend Mesh::Iterator operator++(Mesh::Iterator &lhs, int)
Base class for meshing routines.
virtual Mesh::Iterator & addOne(Mesh::Iterator &lhs) const =0
virtual void getPosition(const Mesh::Iterator &it, double *position) const =0
friend bool operator>(const Mesh::Iterator &lhs, const Mesh::Iterator &rhs)
friend Mesh::Iterator & operator++(Mesh::Iterator &lhs)
friend bool operator<(const Mesh::Iterator &lhs, const Mesh::Iterator &rhs)
friend Mesh::Iterator & operator-=(Mesh::Iterator &lhs, const int &rhs)
virtual Mesh::Iterator & subEquals(Mesh::Iterator &lhs, const Mesh::Iterator &rhs) const =0
virtual Mesh::Iterator & addEquals(Mesh::Iterator &lhs, int difference) const =0
friend bool operator!=(const Mesh::Iterator &lhs, const Mesh::Iterator &rhs)
friend Mesh::Iterator operator-(const Mesh::Iterator &lhs, const Mesh::Iterator &rhs)
virtual Mesh::Iterator & subOne(Mesh::Iterator &lhs) const =0
virtual int getPositionDimension() const =0
friend Mesh::Iterator & operator--(Mesh::Iterator &lhs)
virtual Mesh * dual() const =0
friend Mesh::Iterator & operator+=(Mesh::Iterator &lhs, const Mesh::Iterator &rhs)
friend bool operator==(const Mesh::Iterator &lhs, const Mesh::Iterator &rhs)
friend Mesh::Iterator & operator+=(Mesh::Iterator &lhs, const int &rhs)
virtual Mesh::Iterator & subEquals(Mesh::Iterator &lhs, int difference) const =0
friend bool operator<=(const Mesh::Iterator &lhs, const Mesh::Iterator &rhs)
friend Mesh::Iterator operator--(Mesh::Iterator &lhs, int)
virtual bool isGreater(const Mesh::Iterator &lhs, const Mesh::Iterator &rhs) const =0
friend Mesh::Iterator operator+(const Mesh::Iterator &lhs, const Mesh::Iterator &rhs)
virtual Mesh::Iterator getNearest(const double *position) const =0
virtual Mesh::Iterator end() const =0
virtual Mesh::Iterator & addEquals(Mesh::Iterator &lhs, const Mesh::Iterator &rhs) const =0
virtual Mesh::Iterator begin() const =0
friend Mesh::Iterator operator+(const Mesh::Iterator &lhs, const int &rhs)
friend Mesh::Iterator & operator-=(Mesh::Iterator &lhs, const Mesh::Iterator &rhs)
virtual int toInteger(const Mesh::Iterator &lhs) const =0
friend Mesh::Iterator operator-(const Mesh::Iterator &lhs, const int &rhs)
friend bool operator>=(const Mesh::Iterator &lhs, const Mesh::Iterator &rhs)
friend Mesh::Iterator operator++(Mesh::Iterator &lhs, int)
Mesh::Iterator & operator--(Mesh::Iterator &lhs)
Mesh::Iterator operator+(const Mesh::Iterator &lhs, const Mesh::Iterator &rhs)
Mesh::Iterator operator-(const Mesh::Iterator &lhs, const Mesh::Iterator &rhs)
bool operator<(const Mesh::Iterator &lhs, const Mesh::Iterator &rhs)
bool operator==(const Mesh::Iterator &lhs, const Mesh::Iterator &rhs)
bool operator>(const Mesh::Iterator &lhs, const Mesh::Iterator &rhs)
bool operator>=(const Mesh::Iterator &lhs, const Mesh::Iterator &rhs)
bool operator!=(const Mesh::Iterator &lhs, const Mesh::Iterator &rhs)
Mesh::Iterator & operator+=(Mesh::Iterator &lhs, const Mesh::Iterator &rhs)
bool operator<=(const Mesh::Iterator &lhs, const Mesh::Iterator &rhs)
std::ostream & operator<<(std::ostream &out, const Mesh::Iterator &it)
Mesh::Iterator & operator++(Mesh::Iterator &lhs)
Mesh::Iterator & operator-=(Mesh::Iterator &lhs, const Mesh::Iterator &rhs)