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_ising.cpp | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) (limited to 'src/wolff_ising.cpp') diff --git a/src/wolff_ising.cpp b/src/wolff_ising.cpp index 0c9485d..24bf74c 100644 --- a/src/wolff_ising.cpp +++ b/src/wolff_ising.cpp @@ -126,12 +126,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 state_t *s) { - sum_of_clusterSize += s->last_cluster_size; + other_f = [&] (const state_t& s) { + sum_of_clusterSize += s.last_cluster_size; }; } else if (draw) { #ifdef HAVE_GLUT @@ -145,24 +145,24 @@ int main(int argc, char *argv[]) { glLoadIdentity(); gluOrtho2D(0.0, L, 0.0, L); - other_f = [] (const state_t *s) { + other_f = [] (const state_t & s) { glClear(GL_COLOR_BUFFER_BIT); - for (v_t i = 0; i < pow(s->L, 2); i++) { - if (s->spins[i].x == s->R.x) { + for (v_t i = 0; i < pow(s.L, 2); i++) { + if (s.spins[i].x == s.R.x) { glColor3f(0.0, 0.0, 0.0); } else { glColor3f(1.0, 1.0, 1.0); } - 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 state_t *s) {}; + other_f = [] (const state_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 { @@ -179,12 +179,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