Inheritance diagram for vol::RawObservationsVolumeCreator:
The actual blending will typically be done by a separate w2merger process.
Public Member Functions | |
RawObservationsVolumeCreator (const code::TimeInterval &interval, const std::string &outputDir, code::SmartPtr< code::IndexRecordNotifier > lb) | |
virtual | ~RawObservationsVolumeCreator () |
virtual bool | isExpired (const code::Time &dataTime) const |
Is data at this time expired already? | |
const code::LatLonHeightGrid & | getCurrentGrid () |
returns the result, computing it if necessary. | |
virtual std::vector< code::LatLonHeightGrid > | getOtherOutputs () const |
Make sure to call this method after calling getCurrentGrid. | |
virtual std::vector< code::SmartPtr< code::DataType > > | getNonLatLonGridOutputs () const |
VolumeCreators like the VADVolumeCreator may not return LatLonGrid. | |
void | process (code::RadialSet &rs) |
Update grid based on radial set data. | |
void | process (code::LatLonGrid &llg) |
Update grid based on lat-lon data. | |
void | process (code::LatLonHeightGrid &llh) |
Update grid based on lat-lon data. | |
void | process (RawObservationStruct &rawobs) |
Update grid based on raw observations. | |
void | process (WeightedObservationStruct &rawobs) |
int | getNumLat () const |
int | getNumLon () const |
int | getNumHt () const |
const GridSpecification & | getGridSpec () const |
void | setScaleCorrectionOn (bool flag) |
If this is turned on, we will correct for difference in scale between radar data and the output grid by averaging radar gates. | |
void | setPrecision (float prec) |
Pass a positive value to set a round-off precision. | |
float | roundOff (float val) |
Subclasses should remember to call roundoff on their final values. | |
virtual bool | isReady () const |
over-ride this to tell clients that we are incomplete, and that functions such as getCurrentGrid() should not be called. | |
float | getFractionAvailable (size_t htno) const |
What fraction of the pixels at this height are not DataUnavailable? Values may either be MissingData or a valid value. | |
void | setAzimuthalAccuracy (float acc) |
How accurate should the azimuths be? By default, this is 0.1. | |
int | getStoredAzimuthToAzNo () const |
Get the scaling factor based on azimuthal accuracy. | |
virtual void | init (const GridSpecification &gridSpec, const std::string &cacheDir, const std::string &outputDir, code::SmartPtr< code::IndexRecordNotifier > lb) |
the real constructor | |
float | getDegreesPerKmLat () const |
float | getDegreesPerKmLon () const |
float | getKmPerPixelLat () const |
float | getKmPerPixelLon () const |
Protected Member Functions | |
virtual code::LatLonHeightGrid | getDimensionedGrid (const GridSpecification &) |
void | updateGridWithData (const RadialSetLookup &, const code::DataConverter::RadialSetLookup &, const code::RadialSet &, const code::Time &timeOfNewData) |
simply writes out the raw observations | |
virtual void | finalizeGrid () |
nothing more to do. | |
virtual code::TimeInterval | getDataExpiryInterval () const |
How long should data be kept? | |
int | getClosestLevel (const code::Length &inht, float tolerance_meters=0.1) |
virtual void | updateGridWithData (const code::LatLonGrid &, const code::Time &timeOfNewData, int ht) |
virtual void | updateGridWithData (const RawObservationStruct &) |
virtual void | updateGridWithData (const WeightedObservationStruct &) |
virtual code::LatLonHeightGrid | getDimensionedGrid (const GridSpecification &) |
void | setTimeOfGrid (const code::Time &productTime) |
virtual code::RadialSet | smoothAlongRadials (const code::RadialSet &rs, int half_size) |
Protected Attributes | |
code::LatLonHeightGrid | myCurrentGrid |
TimeUpdater | myAgeOffTime |
std::string | myOutputDir |
code::SmartPtr< code::IndexRecordNotifier > | myLB |
vol::RawObservationsVolumeCreator::RawObservationsVolumeCreator | ( | const code::TimeInterval & | interval, | |
const std::string & | outputDir, | |||
code::SmartPtr< code::IndexRecordNotifier > | lb | |||
) |
virtual vol::RawObservationsVolumeCreator::~RawObservationsVolumeCreator | ( | ) | [inline, virtual] |
virtual void vol::RawObservationsVolumeCreator::finalizeGrid | ( | ) | [protected, virtual] |
int vol::VolumeCreator::getClosestLevel | ( | const code::Length & | inht, | |
float | tolerance_meters = 0.1 | |||
) | [protected, inherited] |
const code::LatLonHeightGrid& vol::VolumeCreator::getCurrentGrid | ( | ) | [inherited] |
returns the result, computing it if necessary.
virtual code::TimeInterval vol::RawObservationsVolumeCreator::getDataExpiryInterval | ( | ) | const [inline, protected, virtual] |
float vol::VolumeCreator::getDegreesPerKmLat | ( | ) | const [inline, inherited] |
float vol::VolumeCreator::getDegreesPerKmLon | ( | ) | const [inline, inherited] |
virtual code::LatLonHeightGrid vol::VolumeCreator::getDimensionedGrid | ( | const GridSpecification & | ) | [protected, virtual, inherited] |
virtual code::LatLonHeightGrid vol::RawObservationsVolumeCreator::getDimensionedGrid | ( | const GridSpecification & | ) | [protected, virtual] |
float vol::VolumeCreator::getFractionAvailable | ( | size_t | htno | ) | const [inherited] |
What fraction of the pixels at this height are not DataUnavailable? Values may either be MissingData or a valid value.
const GridSpecification& vol::VolumeCreator::getGridSpec | ( | ) | const [inline, inherited] |
float vol::VolumeCreator::getKmPerPixelLat | ( | ) | const [inline, inherited] |
float vol::VolumeCreator::getKmPerPixelLon | ( | ) | const [inline, inherited] |
virtual std::vector< code::SmartPtr<code::DataType> > vol::VolumeCreator::getNonLatLonGridOutputs | ( | ) | const [inline, virtual, inherited] |
VolumeCreators like the VADVolumeCreator may not return LatLonGrid.
Call this method, but there is no need to invokve VolumeGridAlgorithm on these outputs.
Reimplemented in vol::BlendedVolumeCreator, vol::MultiDopplerVolumeCreator, and vol::VADVolumeCreator.
int vol::VolumeCreator::getNumHt | ( | ) | const [inline, inherited] |
int vol::VolumeCreator::getNumLat | ( | ) | const [inline, inherited] |
int vol::VolumeCreator::getNumLon | ( | ) | const [inline, inherited] |
virtual std::vector< code::LatLonHeightGrid > vol::VolumeCreator::getOtherOutputs | ( | ) | const [inline, virtual, inherited] |
Make sure to call this method after calling getCurrentGrid.
Reimplemented in vol::MultiDopplerUVWVolumeCreator, vol::MultiDopplerVolumeCreator, and vol::VADVolumeCreator.
int vol::VolumeCreator::getStoredAzimuthToAzNo | ( | ) | const [inline, inherited] |
Get the scaling factor based on azimuthal accuracy.
virtual void vol::VolumeCreator::init | ( | const GridSpecification & | gridSpec, | |
const std::string & | cacheDir, | |||
const std::string & | outputDir, | |||
code::SmartPtr< code::IndexRecordNotifier > | lb | |||
) | [virtual, inherited] |
the real constructor
virtual bool vol::RawObservationsVolumeCreator::isExpired | ( | const code::Time & | dataTime | ) | const [virtual] |
virtual bool vol::VolumeCreator::isReady | ( | ) | const [inline, virtual, inherited] |
over-ride this to tell clients that we are incomplete, and that functions such as getCurrentGrid() should not be called.
Reimplemented in vol::AlreadyMergedVolumeCreator.
void vol::VolumeCreator::process | ( | WeightedObservationStruct & | rawobs | ) | [inherited] |
void vol::VolumeCreator::process | ( | RawObservationStruct & | rawobs | ) | [inherited] |
Update grid based on raw observations.
void vol::VolumeCreator::process | ( | code::LatLonHeightGrid & | llh | ) | [inherited] |
Update grid based on lat-lon data.
Does not change the lat-lon.
void vol::VolumeCreator::process | ( | code::LatLonGrid & | llg | ) | [inherited] |
Update grid based on lat-lon data.
Does not change the lat-lon.
Reimplemented in vol::AlreadyMergedVolumeCreator.
void vol::VolumeCreator::process | ( | code::RadialSet & | rs | ) | [inherited] |
Update grid based on radial set data.
Does not change the radial set.
float vol::VolumeCreator::roundOff | ( | float | val | ) | [inline, inherited] |
Subclasses should remember to call roundoff on their final values.
The value passed in should not be missing, dataunavailable, etc.
void vol::VolumeCreator::setAzimuthalAccuracy | ( | float | acc | ) | [inherited] |
How accurate should the azimuths be? By default, this is 0.1.
Using lower values, such as 0.05 will result in thin fine lines where the beams are spaced further apart than 0.05 degrees.
void vol::VolumeCreator::setPrecision | ( | float | prec | ) | [inline, inherited] |
Pass a positive value to set a round-off precision.
For example, setting a precision of 0.5 means that output values in the merger grid (not derived quantities) will be rounded off to the nearest 0.5.
By default, precision is negative i.e. no rounding off is done.
void vol::VolumeCreator::setScaleCorrectionOn | ( | bool | flag | ) | [inline, inherited] |
If this is turned on, we will correct for difference in scale between radar data and the output grid by averaging radar gates.
void vol::VolumeCreator::setTimeOfGrid | ( | const code::Time & | productTime | ) | [protected, inherited] |
virtual code::RadialSet vol::VolumeCreator::smoothAlongRadials | ( | const code::RadialSet & | rs, | |
int | half_size | |||
) | [protected, virtual, inherited] |
virtual void vol::VolumeCreator::updateGridWithData | ( | const WeightedObservationStruct & | ) | [inline, protected, virtual, inherited] |
Reimplemented in vol::BlendedVolumeCreator.
virtual void vol::VolumeCreator::updateGridWithData | ( | const RawObservationStruct & | ) | [inline, protected, virtual, inherited] |
Reimplemented in vol::BlendedVolumeCreator.
virtual void vol::VolumeCreator::updateGridWithData | ( | const code::LatLonGrid & | , | |
const code::Time & | timeOfNewData, | |||
int | ht | |||
) | [inline, protected, virtual, inherited] |
Reimplemented in vol::BlendedVolumeCreator.
void vol::RawObservationsVolumeCreator::updateGridWithData | ( | const RadialSetLookup & | , | |
const code::DataConverter::RadialSetLookup & | , | |||
const code::RadialSet & | , | |||
const code::Time & | timeOfNewData | |||
) | [protected, virtual] |
TimeUpdater vol::VolumeCreator::myAgeOffTime [protected, inherited] |
code::LatLonHeightGrid vol::VolumeCreator::myCurrentGrid [protected, inherited] |
code::SmartPtr<code::IndexRecordNotifier> vol::VolumeCreator::myLB [protected, inherited] |
std::string vol::VolumeCreator::myOutputDir [protected, inherited] |