]> git.treefish.org Git - phys/latlib.git/blobdiff - o815/o815.h
Opening cachefiles exclusively with O_EXCL.
[phys/latlib.git] / o815 / o815.h
index 1b941700ef66a51f6a79b6bb734477bf0a32184e..79d427dbb415dfe3c687579eb0c0d8eb93d5dcfa 100644 (file)
@@ -3,7 +3,6 @@
 
 #include <string>
 #include <vector>
 
 #include <string>
 #include <vector>
-#include <mpi.h>
 #include <stdlib.h>
 #include <getopt.h>
 
 #include <stdlib.h>
 #include <getopt.h>
 
@@ -20,15 +19,16 @@ class o815 {
 
   class obs {
   public:
 
   class obs {
   public:
-    obs(const string& _obsid, const string& _datadesc, o815 *_O815, const int& _obsmemSize);
+    obs(const string& _obsid, const string& _datadesc, o815 *_O815, const int& _obsmemSize, const string& _obsidpostfix="");
     void finish();
     void finish();
-    void meas(bool loadedobs);
+    void meas(bool loadedobs, const int& nthmeas);
     void start();
     string getDataDesc() { return datadesc; };
     int ocid;
     string obsid;
     void start();
     string getDataDesc() { return datadesc; };
     int ocid;
     string obsid;
+    string obsidpostfix;
   private:
   private:
-    virtual void _meas(bool loadedobs)=0;
+    virtual void _meas(bool loadedobs, const int& nthmeas)=0;
     virtual void _finish()=0;
     virtual void _start()=0;
   protected:
     virtual void _finish()=0;
     virtual void _start()=0;
   protected:
@@ -43,16 +43,15 @@ class o815 {
   public:
     sim(o815 *_O815, const int& _confmemSize);
     void nextConfig();
   public:
     sim(o815 *_O815, const int& _confmemSize);
     void nextConfig();
-    bool toEquilibrate;
     char *confMem;
     char *confMem;
-    virtual void _newParas() {};
+    virtual void _newParas()=0;
+    int nequi, nskip;
   private:
   private:
-    virtual void _reset()=0;
-    virtual void _makeSweep(int nsweep)=0;
+    virtual void _makeSweep()=0;
   protected:
     o815 *O815;
     ostream *log;
   protected:
     o815 *O815;
     ostream *log;
-    int nequi, nskip, confmemSize;
+    int confmemSize;
   };
 
   struct {
   };
 
   struct {
@@ -77,6 +76,7 @@ class o815 {
   };
 
   o815(int argc, char **argv, const string& _programid, comoption specOps[]=NULL, void (*helpHeader)()=NULL);
   };
 
   o815(int argc, char **argv, const string& _programid, comoption specOps[]=NULL, void (*helpHeader)()=NULL);
+  void postParaInit();
   ~o815();
   paraq *paraQ;
   writeout *out;
   ~o815();
   paraq *paraQ;
   writeout *out;
@@ -91,13 +91,13 @@ class o815 {
 
 private:
   vector<comoption> comOptions;
 
 private:
   vector<comoption> comOptions;
-  MPI_Status mpiStatus;
   int numprocs, rank;
   static void listArg(int *target, int tlen, char *listarg);
   void parseArgs(int argc, char **argv, comoption specOps[]);
   string programid;
   int nextParas();
   comoption* getOptionByVal(int val);
   int numprocs, rank;
   static void listArg(int *target, int tlen, char *listarg);
   void parseArgs(int argc, char **argv, comoption specOps[]);
   string programid;
   int nextParas();
   comoption* getOptionByVal(int val);
+  static void readCacheArgs(const string& arg, string& cachedir, int& cachemode);
 };
 
 #endif
 };
 
 #endif