33#ifndef __GyotoStandardAstrobj_H_
34#define __GyotoStandardAstrobj_H_
142 virtual int
Impact(Gyoto::Photon* ph, size_t index,
143 Astrobj::Properties *data=NULL) ;
155 virtual double operator()(double const coord[4]) = 0;
165 virtual void
getVelocity(double const pos[4], double vel[4]) = 0 ;
Astronomical objects (light emitters)
Classes with an operator() method.
#define GYOTO_OBJECT
Declare class::properties and class::getProperties()
Definition: GyotoObject.h:84
Base class for astronomical object.
Definition: GyotoAstrobj.h:199
Astronomical objects defined bya a potential/distance.
Definition: GyotoStandardAstrobj.h:87
double critical_value_
See operator()(double const coord[4])
Definition: GyotoStandardAstrobj.h:94
virtual int Impact(Gyoto::Photon *ph, size_t index, Astrobj::Properties *data=NULL)
Does a photon at these coordinates impact the object?
double delta_inobj_
Constant value of the integration step inside object, in units of the compact object's mass M.
Definition: GyotoStandardAstrobj.h:96
double deltaInObj() const
Get Generic::delta_inobj_.
virtual double giveDelta(double coord[8])
Maximum δ inside object.
virtual double safetyValue() const
Get Standard::safety_value_.
virtual void getVelocity(double const pos[4], double vel[4])=0
Fluid velocity field.
double safety_value_
See operator()(double const coord[4])
Definition: GyotoStandardAstrobj.h:95
A functor like double (func) (double const data[])
Definition: GyotoFunctors.h:44
Pointers performing reference counting.
Definition: GyotoSmartPointer.h:135
Namespace for the Gyoto library.
Definition: GyotoAstrobj.h:43