Gyoto
|
Public Member Functions | |
Spectrometer () | |
Default constructor. | |
Spectrometer (size_t nsamples, double band_min, double band_max, SpectroKind_t kind) | |
Constructor setting everything. | |
Spectrometer (const Spectrometer &) | |
Copy constructor. | |
Spectrometer * | clone () const |
Cloner. | |
virtual | ~Spectrometer () |
Destructor. | |
void | setKind (SpectroKind_t) |
void | setKind (std::string) |
void | setNSamples (size_t n) |
void | setBand (double nu[2]) |
SpectroKind_t | getKind () const |
std::string | getKindStr () const |
size_t | getNSamples () const |
double const * | getBand () const |
double const * | getMidpoints () const |
double const * | getChannels () const |
double const * | getWidths () const |
void | fillElement (FactoryMessenger *fmp) |
called from Factory |
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 | reset_ () |
Computes boundaries_, midpoints_ and widths_. | |
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. |
Protected Attributes | |
SpectroKind_t | kind_ |
none, freqlog, freq, wavelog or wave. | |
size_t | nsamples_ |
number of spectral elements | |
double | band_ [2] |
boundaries of the spectro | |
double * | boundaries_ |
double * | midpoints_ |
double * | widths_ |
Friends | |
class | Gyoto::SmartPointer< Gyoto::Spectrometer > |
|
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().