Inheritance diagram for code::Algorithm:
Subclasses of the Algorithm class include "DisplayAlgorithm"
This is the Visitor pattern. The classes in code_BasicTypes and code_DimensionedData define the basic structures while subclasses of Algorithm define the various methods available.
It is okay to provide implementations for only some of these overloaded functions. If a user attempts to use something that hasn't been implemented, he will get a warning message. It is done this way, rather than as a pure virtual function, so that data structures can be added without breaking all existing code.
For an example of how this system can be used, the user is directed to the example source file algorithm_design.cc
Public Member Functions | |
virtual void | process (AlgTrackStruct &) |
Default to process( BasicIcon& ) if the Algorithm subclass doesn't override this method. | |
virtual void | process (BasicIcon &) |
Process any BasicIcon. | |
virtual void | process (BwerIconStruct &) |
Default to process( BasicIcon& ) if the Algorithm subclass doesn't override this method. | |
virtual void | process (CartesianGrid2D &) |
Plane with gridded data on it. | |
virtual void | process (CartesianGrid3D &) |
Volume with gridded data on it. | |
virtual void | process (DataTable &) |
virtual void | process (DataType &) |
Process the abstract base class DataType itself. | |
virtual void | processVolume (Volume &) |
Process a generic volume (Deal with a volume on an abstract level. | |
virtual void | process (ElevationVolume &) |
Process a whole elevation volume scan. | |
virtual void | process (LatLonHeightGrid &) |
Process a whole volume scan in latlonheight. | |
virtual void | process (IconSet &) |
virtual void | process (Table &) |
virtual void | process (HailTrendEvent &, SpaceTimeRef &) |
virtual void | process (LatLonGrid &) |
Process a LatLonGrid. | |
virtual void | process (PolarGrid &) |
Process a PolarGrid. | |
virtual void | process (DEM &) |
Process a Digital Elevation Map (DEM). | |
virtual void | process (LtgoIconStruct &) |
Default to process( BasicIcon& ) if the Algorithm subclass doesn't override this method. | |
virtual void | process (MesoIconStruct &) |
Default to process( BasicIcon& ) if the Algorithm subclass doesn't override this method. | |
virtual void | process (MesoTrendEvent &, SpaceTimeRef &) |
virtual void | process (ContourData &) |
virtual void | process (SingleContourData &) |
virtual void | process (Radial &) |
Process a single radial. | |
virtual void | process (RadialSet &) |
Process a RadialSet. | |
virtual void | process (ScitTrendEvent &, SpaceTimeRef &) |
virtual void | process (TornTrendEvent &, SpaceTimeRef &) |
virtual void | process (FieldArrowStruct &) |
Deppreciated. | |
virtual void | process (WindFieldStruct< LatLonGrid > &) |
virtual void | process (WindFieldStruct< CartesianGrid2D > &) |
virtual | ~Algorithm () |
virtual code::Algorithm::~Algorithm | ( | ) | [inline, virtual] |
virtual void code::Algorithm::process | ( | WindFieldStruct< CartesianGrid2D > & | ) | [virtual] |
Reimplemented in code::NetcdfEncoder.
virtual void code::Algorithm::process | ( | WindFieldStruct< LatLonGrid > & | ) | [virtual] |
Reimplemented in code::NetcdfEncoder.
virtual void code::Algorithm::process | ( | FieldArrowStruct & | ) | [virtual] |
Deppreciated.
virtual void code::Algorithm::process | ( | TornTrendEvent & | , | |
SpaceTimeRef & | ||||
) | [virtual] |
virtual void code::Algorithm::process | ( | ScitTrendEvent & | , | |
SpaceTimeRef & | ||||
) | [virtual] |
virtual void code::Algorithm::process | ( | RadialSet & | ) | [virtual] |
virtual void code::Algorithm::process | ( | Radial & | ) | [virtual] |
Process a single radial.
virtual void code::Algorithm::process | ( | SingleContourData & | ) | [virtual] |
virtual void code::Algorithm::process | ( | ContourData & | ) | [virtual] |
Reimplemented in code::NetcdfEncoder.
virtual void code::Algorithm::process | ( | MesoTrendEvent & | , | |
SpaceTimeRef & | ||||
) | [virtual] |
virtual void code::Algorithm::process | ( | MesoIconStruct & | ) | [virtual] |
Default to process( BasicIcon& ) if the Algorithm subclass doesn't override this method.
virtual void code::Algorithm::process | ( | LtgoIconStruct & | ) | [virtual] |
Default to process( BasicIcon& ) if the Algorithm subclass doesn't override this method.
virtual void code::Algorithm::process | ( | DEM & | ) | [virtual] |
Process a Digital Elevation Map (DEM).
Default is to process as a regular LatLonGrid.
virtual void code::Algorithm::process | ( | PolarGrid & | ) | [virtual] |
Process a PolarGrid.
The default implementation converts the PolarGrid into a RadialSet and sends the radial set along for processing.
Reimplemented in code::NetcdfEncoder.
virtual void code::Algorithm::process | ( | LatLonGrid & | ) | [virtual] |
virtual void code::Algorithm::process | ( | HailTrendEvent & | , | |
SpaceTimeRef & | ||||
) | [virtual] |
virtual void code::Algorithm::process | ( | Table & | ) | [virtual] |
virtual void code::Algorithm::process | ( | IconSet & | ) | [virtual] |
virtual void code::Algorithm::process | ( | LatLonHeightGrid & | ) | [virtual] |
Process a whole volume scan in latlonheight.
Reimplemented in code::NetcdfEncoder, and code::CrossSection.
virtual void code::Algorithm::process | ( | ElevationVolume & | ) | [virtual] |
virtual void code::Algorithm::process | ( | DataType & | ) | [virtual] |
Process the abstract base class DataType itself.
virtual void code::Algorithm::process | ( | DataTable & | ) | [virtual] |
Reimplemented in code::XMLEncoder.
virtual void code::Algorithm::process | ( | CartesianGrid3D & | ) | [virtual] |
virtual void code::Algorithm::process | ( | CartesianGrid2D & | ) | [virtual] |
virtual void code::Algorithm::process | ( | BwerIconStruct & | ) | [virtual] |
Default to process( BasicIcon& ) if the Algorithm subclass doesn't override this method.
virtual void code::Algorithm::process | ( | BasicIcon & | ) | [virtual] |
virtual void code::Algorithm::process | ( | AlgTrackStruct & | ) | [virtual] |
Default to process( BasicIcon& ) if the Algorithm subclass doesn't override this method.
virtual void code::Algorithm::processVolume | ( | Volume & | ) | [virtual] |
Process a generic volume (Deal with a volume on an abstract level.
Current volumes are ElevationVolume and LatLonHeightGrid