26 virtual void print(
int indent) = 0;
27 virtual void apply(std::vector<std::shared_ptr<Base>>& bfuncs) = 0;
33 static const std::string
UInt;
53 virtual std::shared_ptr<Base>
clone()
const = 0;
57 virtual void divideBy(std::vector<std::shared_ptr<Base>>& divisors) {
58 for (
auto item : divisors) {
66 bool parse(std::string str, Function*& fun);
ippl::Vector< T, Dim > Vector_t
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)
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
bool doesIntersect(const BoundingBox2D &bb) const
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