- static void initO(const string& cacheid, const int& nequi, const int& nskip, const string& datadir,
- char **configmem, const int& configMemSize, const int& cachemode=CACHE_MODE_FULL, writeout *out_a=NULL) {
- initCache(&O, cacheid, nequi, nskip, datadir, configmem, configMemSize, cachemode, out_a);
+ struct observable{
+ configcache *c;
+ int lastWrittenObsEquis;
+ };
+
+ static int initO(const string& cacheid, const int& nequi, const int& nskip, const string& datadir,
+ char **configmem, const int& configMemSize, const int& cachemode=CACHE_MODE_RW, ostream *_log=NULL) {
+ observable newobs;
+
+ newobs.c = NULL;
+ newobs.lastWrittenObsEquis = 0;
+ Os.push_back(newobs);
+
+ initCache(&Os.back().c, cacheid, nequi, nskip, datadir, configmem, configMemSize, cachemode, _log);
+ return Os.size()-1;