![]() |
|
Polar and Cartesian products. More...
#include <RadarProductOp.h>
Public Types | |
typedef SrcType< MS const > | src_t |
Type of input, that is, source. | |
typedef DstType< MD > | dst_t |
Type of output, that is, destination. | |
![]() | |
enum | OutputDataVerbosity { DEFAULT =0 , INTERMEDIATE =1 , DEBUG =2 , QUALITY =4 } |
Determines if also intermediate results (1) are saved. See –store. | |
typedef drain::EnumFlagger< drain::MultiFlagger< OutputDataVerbosity > > | OutputFlagger |
![]() | |
typedef ReferenceMap | map_t |
Public Member Functions | |
RadarProductOp (const std::string &name, const std::string &description) | |
Default constructor. | |
RadarProductOp (const RadarProductOp &product) | |
virtual const std::string & | getOutputQuantity (const std::string &inputQuantity="") const |
Returns the primary output quantity (ODIM what:quantity , like DBZH) | |
virtual void | processH5 (const Hi5Tree &src, Hi5Tree &dst) const |
virtual void | computeSingleProduct (const DataSetMap< src_t > &srcSweeps, DataSet< dst_t > &dstProduct) const |
Traverse the data applicable for this product and create new, processed data (volume or polar product). | |
virtual void | processDataSet (const DataSet< src_t > &srcSweep, DataSet< DstType< MD > > &dstProduct) const |
Process the data of a single sweep and and write the result to given product. | |
virtual void | processData (const Data< src_t > &srcData, Data< dst_t > &dstData) const |
![]() | |
const std::string & | getLastArguments () const |
virtual | ~ProductBase () |
Destructor. | |
void | setDataSelector (const DataSelector &selector) |
Copies the conditions of another selector. | |
const DataSelector & | getDataSelector () const |
Returns the data selector of this operator. | |
DataSelector & | getDataSelector () |
Returns the data selector of this operator. | |
void | help (std::ostream &ostr=std::cout, bool showDescription=true) const |
Dumps the help of this operator. | |
const drain::ReferenceMap & | getAllowedEncoding () const |
Returns a map of encoding parameters that can be changed by the user. | |
virtual void | setEncodingRequest (const std::string &p) |
Set encoding parameters for the result: type,gain,offset,undetect,nodata. | |
void | setAllowedEncoding (const std::string &keys) |
![]() | |
ProductConf () | |
Default constructor. | |
ProductConf (const ProductConf &conf) | |
Copy constructor. | |
![]() | |
BeanLike (const BeanLike &b) | |
BeanLike (const std::string &name, const std::string &description="") | |
virtual const std::string & | getName () const |
Return the name of an instance. | |
virtual const std::string & | getDescription () const |
Return a brief description. | |
bool | hasParameters () const |
template<class F > | |
F | getParameter (const std::string &p) const |
Gets a single parameter. | |
const map_t & | getParameters () const |
map_t & | getParameters () |
template<class F > | |
void | setParametersFromEntries (const F &args) |
void | setParameters (std::initializer_list< Variable::init_pair_t > args) |
Grants access to (if above hidden) | |
virtual void | setParameters (const std::string &p, char assignmentSymbol='=', char separatorSymbol=0) |
Sets comma-separated parameters in a predetermined order "a,b,c" or by specifing them "b=2". | |
template<class T > | |
void | setParameters (const std::map< std::string, T > &args) |
Set parameters. | |
template<class T > | |
void | setParameters (const SmartMap< T > &args) |
Set parameters. | |
void | setParameter (const std::string &p, const Castable &value) |
Sets a single parameter. | |
template<class T > | |
void | setParameter (const std::string &p, const VariableT< T > &value) |
template<class F > | |
void | setParameter (const std::string &p, const F &value) |
Sets a single parameter. | |
template<class F > | |
void | setParameter (const std::string &p, std::initializer_list< F > value) |
Sets a single parameter. | |
BeanLike & | operator= (const BeanLike &b) |
virtual std::ostream & | toStream (std::ostream &ostr, bool compact=true) const |
Public Attributes | |
MD | odim |
The default data parameters for encoding output (the product). | |
![]() | |
DataSelector | dataSelector |
std::string | targetEncoding |
How the (main) output is encoded. | |
ODIMPathElem | appendResults |
If set, appends outputs in an hdf5 structure instead of overwriting. | |
OutputFlagger | outputDataVerbosity = DEFAULT |
Protected Member Functions | |
virtual void | setGeometry (const MS &srcODIM, PlainData< dst_t > &dstData) const =0 |
Sets automagically the suitable dst parameters. | |
virtual void | initDst (const MS &srcODIM, PlainData< dst_t > &dstData) const |
initialises dst data by setting suitable ODIM metadata and geometry. | |
virtual void | setEncoding (const ODIM &srcODIM, PlainData< dst_t > &dstData) const |
Sets applicable encoding parametes (type, gain, offset, undetect, nodata) for this product. | |
void | setEncodingNEW (PlainData< dst_t > &dstData, const std::string quantity="", const std::string type="") const |
Sets applicable encoding parametes (type, gain, offset, undetect, nodata) for this product. | |
![]() | |
ProductBase (const std::string &name, const std::string &description) | |
Default constructor. | |
ProductBase (const ProductBase &product) | |
void | storeLastArguments (const std::string &p) override |
Called after setParameters() | |
![]() | |
virtual void | updateBean () const |
Called after setParameters() | |
Additional Inherited Members | |
![]() | |
static void | completeEncoding (ODIM &productODIM, const std::string &targetEncoding) |
Modifies encoding. If type is changed, resets scaling first. | |
static void | applyODIM (ODIM &productODIM, const ODIM &srcODIM, bool applyDefaults=false) |
Sets target quantity and encoding, if unset. If input odim. | |
static void | setRackVersion (drain::VariableMap &metadata) |
![]() | |
static void | setODIMspecials (ODIM &productODIM) |
Sets target encoding. | |
![]() | |
std::string | lastArguments |
drain::ReferenceMap | allowedEncoding |
Defines which encoding parameters can be changed by the user from command line. | |
![]() | |
const std::string | name |
const std::string | description |
map_t | parameters |
Polar and Cartesian products.
MS | - input (source) metadata type: PolarODIM or CartesianODIM. |
MD | - output (destination) metadata type: PolarODIM or CartesianODIM. |
|
virtual |
Traverse the data applicable for this product and create new, processed data (volume or polar product).
The input data is stored in SweepMapSrc, as Map indexed with elevation angles, containing sweep data
Pick main product data and assign (modified) odim data
Reimplemented in EchoTopOp.
|
inlinevirtual |
Returns the primary output quantity (ODIM what:quantity
, like DBZH)
The ODIM quantity of this product
defaultQuantity | - input quantity or a quantity overriding default output quantity of this product |
Reimplemented in DetectorOp, CumulativeProductOp, and EchoTopOpOld.
|
virtual |
Process the data of a single sweep and and write the result to given product.
Notice:
|
virtual |
Usually, the operator does not need groups sorted by elevation.
Main operation
Reimplemented in DataConversionOp< M >.
|
protectedvirtual |
Sets applicable encoding parametes (type, gain, offset, undetect, nodata) for this product.
Determines output encoding based on
This applies always.
|
protected |
Sets applicable encoding parametes (type, gain, offset, undetect, nodata) for this product.
Determines output encoding based on
quantity | - if given, applied as a "template", standard quantity to be copied; also odim.type, if empty, is set. |
type | - if given, odim.type is always changed |
quantity | - if given, applied as a "template", standard quantity to be copied; also odim.type, if empty, is set. |
type | - if given, odim.type is always changed |
This applies always.
|
protectedpure virtual |
Sets automagically the suitable dst parameters.
Derives geometry for the resulting dst from three sources of parameters: the implicit operator parameters this->odim and the two function parameters
srcODIM | - metadata of the incoming data |
dstODIM | - metadata of the result (sometimes partially set). |
Default implementation as an empty function, because some operators like VerticalProfileOp will not use?
Implemented in DataConversionOp< M >.