*out->log << " " << (*obsit)->obsid;
*out->log << endl << flush;
- Sim->toEquilibrate = true;
+ Sim->nequileft = comargs.nequi;
for( int imeas=0; imeas<comargs.nmeas; imeas++ ) {
bool nextAlready = false;
for (vector<obs*>::iterator obsit = observables.begin(); obsit != observables.end(); ++obsit) {
- if( hypercache::readO( (*obsit)->ocid ) != -1 ) {
+ bool readnewObs;
+ int nequileftNewObs;
+
+ hypercache::readO( (*obsit)->ocid, readnewObs, nequileftNewObs );
+
+ if( ! readnewObs ) {
if (!nextAlready) {
Sim->nextConfig();
nextAlready = true;
}
(*obsit)->meas(false);
- hypercache::writeO( (*obsit)->ocid );
+ hypercache::writeO( (*obsit)->ocid, comargs.nmeas );
}
else
(*obsit)->meas(true);