28 virtual void print(
int indent) = 0;
29 virtual void apply(std::vector<std::shared_ptr<Base>> &bfuncs) = 0;
35 static const std::string
UInt;
60 virtual std::shared_ptr<Base>
clone()
const = 0;
64 virtual void divideBy(std::vector<std::shared_ptr<Base> > &divisors) {
65 for (
auto item: divisors) {
66 if (
bb_m.doesIntersect(item->bb_m)) {
73 bool parse(std::string str, Function* &fun);
ippl::Vector< T, Dim > Vector_t
PartBunch< T, Dim >::ConstIterator end(PartBunch< T, Dim > const &bunch)
ippl::ParticleBase< ippl::ParticleSpatialLayout< T, Dim > > Base
KOKKOS_INLINE_FUNCTION double euclidean_norm(const Vector_t< T, D > &v)
double euclidean_norm2D(Vector_t< double, 3 > v)
std::string::iterator iterator
bool parse(std::string str, Function *&fun)
static const std::string FCall
virtual void apply(std::vector< std::shared_ptr< Base > > &bfuncs)=0
static const std::string Double
static const std::string UDouble
static bool parse(iterator &it, const iterator &end, Function *&fun)
virtual void print(int indent)=0
static const std::string UInt
std::vector< std::shared_ptr< Base > > divisor_m
virtual bool isInside(const Vector_t< double, 3 > &R) const =0
virtual void computeBoundingBox()=0
AffineTransformation trafo_m
virtual void divideBy(std::vector< std::shared_ptr< Base > > &divisors)
virtual std::shared_ptr< Base > clone() const =0
virtual void writeGnuplot(std::ofstream &out) const =0