Gyoto
Public Member Functions | Public Attributes | Protected Types | Protected Member Functions | Friends
Gyoto::Astrobj::Properties Class Reference

Observable properties of an Astronomical object. More...

#include <GyotoAstrobj.h>

Inheritance diagram for Gyoto::Astrobj::Properties:
Gyoto::SmartPointee

List of all members.

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 >

Detailed Description

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.


Member Typedef Documentation

typedef Gyoto::SmartPointer<Gyoto::SmartPointee> Gyoto::SmartPointee::Subcontractor_t(Gyoto::FactoryMessenger *)
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().


The documentation for this class was generated from the following file: