29#ifndef BASE_CHECKPOINTER
30#define BASE_CHECKPOINTER
37 std::string, config_prefix,
38 std::string, smeared_prefix,
39 std::string, rng_prefix,
47 CheckpointerParameters(std::string cf =
"cfg", std::string sf=
"cfg_smr" , std::string rn =
"rng",
int savemodulo = 1,
bool save_smr =
false,
const std::string& f =
"IEEE64BIG", std::string grp =
"su",
bool rdc_mat =
false,
bool unq_su =
false)
51 saveInterval(savemodulo),
52 saveSmeared(save_smr),
55 reduced_matrix(rdc_mat),
59 template <
class ReaderClass >
61 read(Reader,
"Checkpointer", *
this);
73 std::string &conf_file,
74 std::string &smear_file,
75 std::string &rng_file) {
77 std::ostringstream os;
78 os << Params.rng_prefix <<
"." << traj;
83 std::ostringstream os;
84 os << Params.smeared_prefix <<
"." << traj;
85 smear_file = os.str();
89 std::ostringstream os;
90 os << Params.config_prefix <<
"." << traj;
96 std::ifstream f(filename.c_str());
98 std::cout <<
GridLogError <<
"Filename " << filename <<
" not found. Aborting. " << std::endl;
105 typename Impl::Field &
U,
GridLogger GridLogError(1, "Error", GridLogColours, "RED")
#define NAMESPACE_BEGIN(A)
static INTERNAL_PRECISION U
virtual void TrajectoryComplete(int traj, typename Impl::Field &U, GridSerialRNG &sRNG, GridParallelRNG &pRNG)
virtual ~BaseHmcCheckpointer()
virtual void CheckpointRestore(int traj, typename Impl::Field &U, GridSerialRNG &sRNG, GridParallelRNG &pRNG)=0
void build_filenames(int traj, CheckpointerParameters &Params, std::string &conf_file, std::string &smear_file, std::string &rng_file)
void check_filename(const std::string &filename)
virtual void initialize(const CheckpointerParameters &Params)=0
CheckpointerParameters(std::string cf="cfg", std::string sf="cfg_smr", std::string rn="rng", int savemodulo=1, bool save_smr=false, const std::string &f="IEEE64BIG", std::string grp="su", bool rdc_mat=false, bool unq_su=false)
GRID_SERIALIZABLE_CLASS_MEMBERS(CheckpointerParameters, std::string, config_prefix, std::string, smeared_prefix, std::string, rng_prefix, int, saveInterval, bool, saveSmeared, std::string, format, std::string, group, bool, reduced_matrix, bool, unique_su,)
CheckpointerParameters(Reader< ReaderClass > &Reader)