22 #ifndef DBALLE_MSG_WR_CODEC_H
23 #define DBALLE_MSG_WR_CODEC_H
27 #include <wreport/varinfo.h>
80 virtual void to_bulletin(
const Msgs& msgs, wreport::Bulletin& msg)
const;
95 virtual std::auto_ptr<wreport::Bulletin>
make_bulletin()
const;
105 virtual std::auto_ptr<wreport::Bulletin>
make_bulletin()
const;
110 struct TemplateRegistry;
115 virtual void setupBulletin(wreport::Bulletin& bulletin);
116 virtual void to_subset(
const Msg& msg, wreport::Subset& subset);
118 void add(wreport::Varcode code,
const msg::Context* ctx,
int shortcut)
const;
119 void add(wreport::Varcode code,
const msg::Context* ctx, wreport::Varcode srccode)
const;
120 void add(wreport::Varcode code,
const msg::Context* ctx)
const;
121 void add(wreport::Varcode code,
int shortcut)
const;
122 void add(wreport::Varcode code, wreport::Varcode srccode,
const Level& level,
const Trange& trange)
const;
123 void add(wreport::Varcode code,
const wreport::Var* var)
const;
125 void add_st_name(wreport::Varcode dstcode,
const msg::Context* ctx)
const;
127 void do_ecmwf_past_wtr()
const;
128 void do_D01001()
const;
129 void do_D01004()
const;
130 void do_D01011()
const;
131 int do_D01012()
const;
132 void do_D01013()
const;
133 void do_D01021()
const;
141 wreport::Subset* subset;
144 : opts(opts), msgs(msgs), msg(0), subset(0) {}
147 virtual const char* name()
const = 0;
148 virtual const char* description()
const = 0;
149 virtual void to_bulletin(wreport::Bulletin& bulletin);
155 std::string description;
182 #include <dballe/bufrex/msg.h>
198 dba_err bufrex_encode_bufr(dba_msgs msgs,
int type,
int subtype,
int localsubtype, dba_rawmsg* raw);
214 dba_err bufrex_encode_crex(dba_msgs msgs,
int type,
int subtype, dba_rawmsg* raw);
227 dba_err bufrex_msg_from_dba_msg(bufrex_msg raw, dba_msg msg);
239 dba_err bufrex_msg_from_dba_msgs(bufrex_msg raw, dba_msgs msgs);
253 dba_err bufrex_msg_to_dba_msgs(bufrex_msg raw, dba_msg_codec_options opts, dba_msgs* msgs);
268 dba_err bufrex_infer_type_subtype(dba_msg msg,
int* type,
int* subtype,
int* localsubtype);