string filename;
int nequi;
int nskip;
- bool doVirtualEquilibration;
bool extended;
- int readEquilibratedConfigs;
};
class configcache{
~configcache();
configcache(const string& cacheid, const int& nequi, const int& nskip, const string& datadir, char **configmem, const int& configMemSize,
const int& cachemode=CACHE_MODE_FULL, ostream *_log=NULL);
- void readConfig(bool& readnewconfig, int& nequileft, vector<unsigned long> *excludeFileHashes=NULL);
+ void readConfig(bool *readnewconfig, int *nequileft, vector<unsigned long> *excludeFileHashes=NULL);
void writeConfig(int actnequi);
void addPara(const string& parid, const double& val=0);
void setPara(const string& parid, const double& value);
static unsigned long hash(const string& str);
void closeInFile() { inFile.close(); }
int inFilesLeft() { return inFiles.size(); }
+ char* getConfigMem() { return configMem; }
+ int getConfigSize() { return configSize; }
+ bool isOutFileOpen () { return outFile.is_open(); }
+ void finishOutFile();
private:
ostream* log;
infiledesc openFileDesc;
- void finishOutFile();
int getParIndex(const string& parid);
int NEQUI;
int NSKIP;
bool readAllHeaders();
vector<infiledesc>::iterator getNextInfile(vector<unsigned long> *excludeFileHashes);
+
+ int nequileft_internal;
+
+ bool doVirtualEquilibration, firstUsedConfig;
};
#endif