26 #ifndef GRALE_ELLIPTICNFWLENS_H
28 #define GRALE_ELLIPTICNFWLENS_H
30 #include "graleconfig.h"
31 #include "ellipticlens.h"
36 class GRALE_IMPORTEXPORT EllipticNFWLensParams :
public GravitationalLensParams
39 EllipticNFWLensParams();
40 EllipticNFWLensParams(
double rho_s,
double theta_s,
double q);
41 ~EllipticNFWLensParams();
43 bool write(serut::SerializationInterface &si)
const;
44 bool read(serut::SerializationInterface &si);
45 GravitationalLensParams *createCopy()
const;
47 double get3DDensityScale()
const {
return m_densityScale3D; }
48 double getAngularRadiusScale()
const {
return m_angularRadiusScale; }
49 double getEllipticity()
const {
return m_ellipticity; }
51 double m_densityScale3D;
52 double m_angularRadiusScale;
56 class GRALE_IMPORTEXPORT EllipticNFWLens :
public EllipticLens
62 bool processParameters(
const GravitationalLensParams *pLensParams);
64 CircularLensProfile *m_pProfile;
69 #endif // GRALE_ELLIPTICNFWLENS_H