39#define RACK_BASE "ProductBase"
49#include <drain/RegExp.h>
50#include <drain/util/SmartMap.h>
51#include <drain/util/TreeOrdered.h>
55#include "data/DataSelector.h"
57#include "data/ODIMPath.h"
58#include "data/ProductConf.h"
102 std::string lastArguments;
107 const std::string & getLastArguments()
const{
108 return lastArguments;
130 void help(std::ostream &ostr = std::cout,
bool showDescription =
true)
const;
150 mout.
debug2(
"Checking if these are allowed" );
153 catch (std::exception & e) {
164 void setAllowedEncoding(
const std::string & keys);
183 void applyODIM(
ODIM & productODIM,
const ODIM & srcODIM,
bool applyDefaults =
false);
Something which has a name, a description and possibly some parameters of varying type.
Definition BeanLike.h:60
void setParameters(std::initializer_list< Variable::init_pair_t > args)
Grants access to (if above hidden)
Definition BeanLike.h:144
LogSourc e is the means for a function or any program segment to "connect" to a Log.
Definition Log.h:312
Logger & warn(const TT &... args)
Possible error, but execution can continue.
Definition Log.h:430
Logger & debug2(const TT &... args)
Debug information.
Definition Log.h:676
Definition ReferenceMap.h:207
void setValues(const std::string &entries, char assignmentSymbol='=', char separatorSymbol=0)
Sets values. If strictness==STRICTLY_CLOSED, throws exception if tries to assign a non-existing entry...
Definition SmartMap.h:311
A map of Variables.
Definition VariableMap.h:61
Tool for selecting datasets based on paths, quantities and min/max elevations.
Definition DataSelector.h:112
static const group_t DATASET
First level group, /dataset + digit .
Definition ODIMPath.h:106
ODIM metadata (quantity, gain, offset, undetect, nodata, date, time)
Definition ODIM.h:79
Base class for radar data processors. Input can be in polar or Cartesian coordinates.
Definition ProductBase.h:82
virtual ~ProductBase()
Destructor.
Definition ProductBase.h:114
void help(std::ostream &ostr=std::cout, bool showDescription=true) const
Dumps the help of this operator.
Definition ProductBase.cpp:62
static void setODIMspecials(ODIM &productODIM)
Sets target encoding.
Definition ProductBase.cpp:264
const drain::ReferenceMap & getAllowedEncoding() const
Returns a map of encoding parameters that can be changed by the user.
Definition ProductBase.h:135
void storeLastArguments(const std::string &p) override
Called after setParameters()
Definition ProductBase.h:98
static void applyODIM(ODIM &productODIM, const ODIM &srcODIM, bool applyDefaults=false)
Sets target quantity and encoding, if unset. If input odim.
Definition ProductBase.cpp:117
DataSelector & getDataSelector()
Returns the data selector of this operator.
Definition ProductBase.h:127
static void completeEncoding(ODIM &productODIM, const std::string &targetEncoding)
Modifies encoding. If type is changed, resets scaling first.
Definition ProductBase.cpp:183
void setDataSelector(const DataSelector &selector)
Copies the conditions of another selector.
Definition ProductBase.h:119
virtual void setEncodingRequest(const std::string &p)
Set encoding parameters for the result: type,gain,offset,undetect,nodata.
Definition ProductBase.h:145
drain::ReferenceMap allowedEncoding
Defines which encoding parameters can be changed by the user from command line.
Definition ProductBase.h:205
const DataSelector & getDataSelector() const
Returns the data selector of this operator.
Definition ProductBase.h:123
ProductBase(const std::string &name, const std::string &description)
Default constructor.
Definition ProductBase.h:88
Shared properties for meteorological products and Cartesian products (composites and single-radar ima...
Definition ProductConf.h:64
std::string targetEncoding
How the (main) output is encoded.
Definition ProductConf.h:83
Namespace for images and image processing tools.
Definition AccumulationArray.cpp:45
Definition DataSelector.cpp:1277
Definition DataSelector.cpp:44