summaryrefslogtreecommitdiffstatsci
path: root/src/caskbench.cpp
diff options
context:
space:
mode:
authorsuyambulingamrm <suyambu.rm@samsung.com>2014-05-21 09:48:05 +0530
committerBryce Harrington <b.harrington@samsung.com>2014-05-21 18:50:41 -0700
commit42276c85ce2759bd6dfb1d6cdf13bf500886b3cb (patch)
treea259988a91a842c77d8c5b1888a64dfdd88b87fa /src/caskbench.cpp
parentba72692e6840085336f64ffc228943a532758db0 (diff)
Added command line option for setting seed value for RNG.
ref: https://github.com/SRA-SiliconValley/caskbench/issues/32
Diffstat (limited to 'src/caskbench.cpp')
-rw-r--r--src/caskbench.cpp16
1 files changed, 14 insertions, 2 deletions
diff --git a/src/caskbench.cpp b/src/caskbench.cpp
index d36b377..44b9af2 100644
--- a/src/caskbench.cpp
+++ b/src/caskbench.cpp
@@ -68,6 +68,7 @@ typedef struct _caskbench_options {
int cap_style;
int join_style;
int dash_style;
+ char *seed_value;
} caskbench_options_t;
typedef struct _caskbench_result {
@@ -271,6 +272,9 @@ process_options(caskbench_options_t *opt, int argc, char *argv[])
"represents r value for stroke color",
NULL},
#endif
+ {"seed-value", 'r', POPT_ARG_STRING, &opt->seed_value, 0,
+ "represents seed value for Random Number generater eg. -r ABCDEFFF",
+ NULL},
POPT_AUTOHELP
{NULL}
};
@@ -568,7 +572,7 @@ main (int argc, char *argv[])
double cairo_avg_time = 0.0;
double perf_improvement = 0.0;
FILE *fp;
- char fname[256];
+ char fname[256], *end_ptr;
device_config_t config;
process_options(&opt, argc, argv);
@@ -607,7 +611,15 @@ main (int argc, char *argv[])
!strncmp(perf_tests[c].name, "skia-clip", 9))
continue;
- srand(0xdeadbeef);
+ if(opt.seed_value == NULL)
+ {
+ srand (0xdeadbeef);
+ }
+ else
+ {
+ srand (strtoul(opt.seed_value,&end_ptr,16));
+ }
+
context_init(&context, opt.size);
shape_defaults_init(&context.shape_defaults, &opt);
result_init(&result, perf_tests[c].name);