From 5f1eb9a12821e7462b7b2853e0d95c8c863bf900 Mon Sep 17 00:00:00 2001 From: Jaron Kent-Dobias Date: Thu, 26 Jul 2018 16:55:17 -0400 Subject: now using const passing of object reference instead of pointers --- src/wolff_potts.cpp | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) (limited to 'src/wolff_potts.cpp') diff --git a/src/wolff_potts.cpp b/src/wolff_potts.cpp index 2bc306b..9fe3ffe 100644 --- a/src/wolff_potts.cpp +++ b/src/wolff_potts.cpp @@ -135,12 +135,12 @@ int main(int argc, char *argv[]) { FILE **outfiles = measure_setup_files(measurement_flags, timestamp); - std::function other_f; + std::function other_f; uint64_t sum_of_clusterSize = 0; if (N_is_sweeps) { - other_f = [&] (const sim_t *s) { - sum_of_clusterSize += s->last_cluster_size; + other_f = [&] (const sim_t& s) { + sum_of_clusterSize += s.last_cluster_size; }; } else if (draw) { #ifdef HAVE_GLUT @@ -154,21 +154,21 @@ int main(int argc, char *argv[]) { glLoadIdentity(); gluOrtho2D(0.0, L, 0.0, L); - other_f = [] (const sim_t *s) { + other_f = [] (const sim_t& s) { glClear(GL_COLOR_BUFFER_BIT); - for (v_t i = 0; i < pow(s->L, 2); i++) { - potts_t tmp_s = s->R.act_inverse(s->spins[i]); + for (v_t i = 0; i < pow(s.L, 2); i++) { + potts_t tmp_s = s.R.act_inverse(s.spins[i]); glColor3f(hue_to_R(tmp_s.x * 2 * M_PI / POTTSQ), hue_to_G(tmp_s.x * 2 * M_PI / POTTSQ), hue_to_B(tmp_s.x * 2 * M_PI / POTTSQ)); - glRecti(i / s->L, i % s->L, (i / s->L) + 1, (i % s->L) + 1); + glRecti(i / s.L, i % s.L, (i / s.L) + 1, (i % s.L) + 1); } glFlush(); }; #endif } else { - other_f = [] (const sim_t *s) {}; + other_f = [] (const sim_t& s) {}; } - std::function measurements = measure_function_write_files(measurement_flags, outfiles, other_f); + std::function measurements = measure_function_write_files(measurement_flags, outfiles, other_f); // add line to metadata file with run info { @@ -194,12 +194,12 @@ int main(int argc, char *argv[]) { printf("\n"); while (sum_of_clusterSize < N * s.nv) { printf("\033[F\033[J\033[F\033[JWOLFF: sweep %" PRIu64 " / %" PRIu64 ": E = %.2f, S = %" PRIv "\n", (count_t)((double)sum_of_clusterSize / (double)s.nv), N, s.E, s.last_cluster_size); - wolff(N, &s, gen_R, measurements, r, silent); + wolff(N, s, gen_R, measurements, r, silent); N_rounds++; } printf("\033[F\033[J\033[F\033[JWOLFF: sweep %" PRIu64 " / %" PRIu64 ": E = %.2f, S = %" PRIv "\n\n", (count_t)((double)sum_of_clusterSize / (double)s.nv), N, s.E, s.last_cluster_size); } else { - wolff(N, &s, gen_R, measurements, r, silent); + wolff(N, s, gen_R, measurements, r, silent); } // free the random number generator -- cgit v1.2.3-70-g09d2