X-Git-Url: http://git.treefish.org/~alex/phys/latlib.git/blobdiff_plain/2941710185479c3748e991a3932c4af8832204a9..07516f0b1615a95f3e68d073adf4cfda584b99fa:/o815/obs.cpp diff --git a/o815/obs.cpp b/o815/obs.cpp index c927935..37d1d4e 100644 --- a/o815/obs.cpp +++ b/o815/obs.cpp @@ -1,31 +1,44 @@ #include "o815.h" +#include "latlib/hypercache.h" + +#ifndef MPI_DISABLED +#include +#endif + void o815::obs::finish() { _finish(); } void o815::obs::start() { if(O815->rank==0) { - *oout << "#" << obsid << O815->headMaster() << endl << flush; - *oout << "#" << obsid << O815->headMaster() << "-" << datadesc << endl << flush; + *out << "#" << O815->programid << "-" << obsid << obsidpostfix << O815->headMaster() << endl << flush; + *out << "#" << O815->programid << "-" << obsid << obsidpostfix << O815->headMaster() << "-" << datadesc << endl << flush; } +#ifndef MPI_DISABLED if (O815->comargs.outdir=="") MPI_Barrier(MPI_COMM_WORLD); - +#endif + _start(); } -void o815::obs::meas() { - _meas(true); +void o815::obs::meas(bool loadedobs, const int& nthmeas) { + _meas(loadedobs, nthmeas); } -o815::obs::obs(const string& _obsid, const string& _datadesc, o815 *_O815, char *_obsmem, const int& _obsmemSize) { +o815::obs::obs(const string& _obsid, const string& _datadesc, o815 *_O815, const int& obsmemSize, const string& _obsidpostfix) { obsid = _obsid; + obsidpostfix = _obsidpostfix; O815 = _O815; datadesc = _datadesc; - - O815->out->newsub(obsid); - oout = O815->out->out[obsid]; - olog = O815->out->log; + O815->out->newsub(obsid+obsidpostfix); + + out = O815->out->out[obsid+obsidpostfix]; + log = O815->out->log; + paraQ = O815->paraQ; + + ocid = hypercache::initO(O815->programid + "-" + obsid, O815->comargs.nequi, O815->comargs.nskip, + O815->comargs.obscache.first, &obsMem, obsmemSize, O815->comargs.obscache.second, log); }