Gyoto
|
Observable properties of an Astronomical object. More...
#include <GyotoAstrobj.h>
Public Member Functions | |
Properties () | |
Default constructor (everything is set to NULL);. | |
Properties (double *, double *) | |
< set intensity and time pointers. | |
void | init (size_t nbnuobs=0) |
Properties | operator++ () |
Public Attributes | |
double * | intensity |
Apparent intensity (takes beaming into account);. | |
double * | time |
Date of impact (= date of emission of the photon);. | |
double * | distance |
Behaves like the square of the closest distance between Photon and Astrobj (but not exactly that). Initialize it to DBL_MAX from float.h.;. | |
double * | first_dmin |
first local minimum in distance from object | |
int | first_dmin_found |
first_dmin will be set to the first local minimum and first_dmin_found will be set to 1 if a local minimum in distance is found. Initialize it to 0. | |
double * | redshift |
redshift factor nuobs/nuem (necessary for emission lines computation) | |
double * | spectrum |
I_nu (nu) (observed specific intensity) | |
double * | binspectrum |
I_nu1^nu2, the integral of I_nu over each spectral channel (i.e. what a spectrometer would measure) | |
int | offset |
spectra elements are separated by offset doubles in memory. In other words, the ith spectral element is a spectrum[i*offset]. | |
double * | impactcoords |
Coordinates of the object and photon at impact. | |
double * | user1 |
double * | user2 |
double * | user3 |
double * | user4 |
double * | user5 |
Quantities specific to Astrobj. |
Protected Types | |
typedef Gyoto::SmartPointer < Gyoto::SmartPointee > | Subcontractor_t (Gyoto::FactoryMessenger *) |
A subcontractor builds an object upon order from the Factory. |
Protected Member Functions | |
void | incRefCount () |
Increment the reference counter. Warning: Don't mess with the counter. | |
int | decRefCount () |
Decrement the reference counter and return current value. Warning: Don't mess with the counter. | |
int | getRefCount () |
Get the current number of references. |
Friends | |
class | Gyoto::SmartPointer< Gyoto::Astrobj::Properties > |
Observable properties of an Astronomical object.
The sort of properties one wants to measure on a ray-traced Gyoto::Photon which hits a Gyoto::Astrobj. Not all Astrobj are able to fill all of these properties.
|
inherited |
A subcontractor builds an object upon order from the Factory.
Various classes need to provide a subcontractor to be able to instanciate themselves upon order from the Factory. A subcontractor is a function (often a static member function) which accepts a pointer to a FactoryMessenger as unique parameter, communicates with the Factory using this messenger to read an XML description of the object to build, and returns this objet. SmartPointee::Subcontractor_t* is just generic enough a typedef to cast to and from other subcontractor types: Astrobj::Subcontractor_t, Metric::Subcontractor_t, Spectrum::Subcontractor_t. A subcontractor needs to be registered using the relevant Register() function: Astrobj::Register(), Metric::Register(), Spectrum::Register().