21 #include <tjutils/tjhandler.h>
23 #include <odinseq/seqtree.h>
24 #include <odinseq/seqplot.h>
25 #include <odinseq/seqcmdline.h>
28 #define REFGAIN_FILE "odin_refgain"
29 #define MAINNUC_FILE "odin_mainnuc"
64 enum recoMode {odinReco=0, rawData, recoInfoOnly};
86 enum eventLogging {noLogging=0,loggEvent};
122 virtual int process(
int argc,
char *argv[]) = 0;
123 virtual SeqCmdlineActionList get_actions_usage()
const = 0;
125 virtual void pre_event (
eventContext& context)
const = 0;
126 virtual void post_event(
eventContext& context)
const = 0;
128 virtual fvector get_acq_channel_scale_factors()
const = 0;
130 virtual STD_string get_program(
programContext& context)
const = 0;
132 virtual STD_string get_rawfile()
const = 0;
133 virtual STD_string get_rawdatatype()
const = 0;
134 virtual unsigned int get_rawheader_size()
const = 0;
135 virtual STD_string get_image_proc()
const = 0;
136 virtual bool create_recoInfo()
const = 0;
138 virtual int write_rf_waveform (
const STD_string& filename,
const cvector& waveform)
const = 0;
139 virtual int load_rf_waveform (
const STD_string& filename,
cvector& result)
const = 0;
141 virtual int get_max_methodname_length()
const = 0;
143 virtual void set_eventlogging(eventLogging loggflag) = 0;
146 virtual bool pv_pilot(
ProgressMeter* progmeter) {
return true;}
147 virtual STD_string pv_pilot_scan()
const {
return "";}
148 virtual bool pv_gop(
bool autorg,
ProgressMeter* progmeter) {
return true;}
149 virtual bool pv_stop() {
return true;}
152 virtual void set_idea_pars(
void* pMrProt,
void* pSeqLim,
void* pSeqExpo,
recoMode reco_mode) {}
156 virtual bool create_plot_events(
ProgressMeter* progmeter) {
return true;}
179 SeqPlatform* get_current() {
return instance[get_current_platform_id()];}
180 odinPlatform get_current_platform_id() {
return SystemInterface::get_current_pf();}
205 static int load_systemInfo(
const STD_string& filename);
208 static svector get_possible_platforms();
210 static STD_string get_platforms_usage();
212 static int get_platform_for_action(
const STD_string& action);
215 SeqPlatform& operator * () {
return *get_platform_ptr();}
216 SeqPlatform* operator -> () {
return get_platform_ptr();}
219 static void init_static();
220 static void destroy_static();
226 static void create_platform_instances();
Labeled & set_label(const STD_string &label)