9 #include "latlib/paraq.h"
10 #include "latlib/writeout.h"
11 #include "latlib/hypercache.h"
22 obs(const string& _obsid, const string& _datadesc, o815 *_O815, const int& _obsmemSize, const string& _obsidpostfix="");
24 void meas(bool loadedobs, const int& nthmeas);
26 string getDataDesc() { return datadesc; };
31 virtual void _meas(bool loadedobs, const int& nthmeas)=0;
32 virtual void _finish()=0;
33 virtual void _start()=0;
37 string simid, datadesc;
44 sim(o815 *_O815, const int& _confmemSize);
48 virtual void _newParas()=0;
52 virtual void _makeSweep()=0;
53 virtual void _resetConfig()=0;
54 char *startConfiguration;
66 pair<string,int> obscache;
67 pair<string,int> confcache;
83 o815(int argc, char **argv, const string& _programid, comoption specOps[]=NULL, void (*helpHeader)()=NULL);
88 vector<obs*> observables;
91 string headMaster( bool hashedrange=false );
92 void addPara(const string& paraid, const double& paraDefault);
93 void addComOption(const char* name, int has_arg, int *flag, int val, const char* optdesc, const char* argdesc);
94 vector< pair<int,char*> > parsedSpecOps;
95 vector<char*> lonelyArgs;
98 vector<comoption> comOptions;
100 static void listArg(int *target, int tlen, char *listarg);
101 void parseArgs(int argc, char **argv, comoption specOps[]);
104 comoption* getOptionByVal(int val);
105 static void readCacheArgs(const string& arg, string& cachedir, int& cachemode);
106 unsigned long hash(const string& str);