12 #include "quadTreeHalos.h"
13 #include "lens_halos.h"
22 virtual void force(PosType *alpha,KappaType *kappa,KappaType *gamma,KappaType *phi,PosType *xx) = 0;
24 virtual void addHalo(
LensHalo* halo) = 0;
25 virtual void removeHalo(
LensHalo* halo) = 0;
27 virtual std::vector<LensHalo*> getHalos() = 0;
28 virtual std::vector<const LensHalo*> getHalos()
const = 0;
29 virtual void getNeighborHalos(PosType ray[],PosType rmax,std::vector<LensHalo*> &neighbors)
const{};
38 LensPlaneTree(
float z,
LensHalo **my_halos,IndexType Nhalos,PosType my_sigma_background,PosType my_inv_screening_scale = 0);
50 void force(PosType *alpha,KappaType *kappa,KappaType *gamma,KappaType *phi,PosType *xx);
54 std::vector<LensHalo*> getHalos();
55 std::vector<const LensHalo*> getHalos()
const;
57 void getNeighborHalos(PosType ray[],PosType rmax,std::vector<LensHalo*> &neighbors)
const;
61 std::vector<LensHalo *> halos;
77 std::swap(halos,p.halos);
91 std::swap(halos,p.halos);
96 void force(PosType *alpha,KappaType *kappa,KappaType *gamma,KappaType *phi,PosType *xx);
101 std::vector<LensHalo*> getHalos();
102 std::vector<const LensHalo*> getHalos()
const;
103 void getNeighborHalos(PosType ray[],PosType rmax,std::vector<LensHalo*> &neighbors)
const;
106 std::vector<LensHalo*> halos;