From ee48214209e66aa8c6f353262b175895373f76df Mon Sep 17 00:00:00 2001 From: Nathanael Sensfelder Date: Sat, 4 Jan 2020 21:31:55 +0100 Subject: ... --- src/config/parameters/parameters_accessors.c | 48 ++++++++++++++++++++++++++-- 1 file changed, 46 insertions(+), 2 deletions(-) (limited to 'src/config/parameters/parameters_accessors.c') diff --git a/src/config/parameters/parameters_accessors.c b/src/config/parameters/parameters_accessors.c index bd6624c..71c2482 100644 --- a/src/config/parameters/parameters_accessors.c +++ b/src/config/parameters/parameters_accessors.c @@ -1,5 +1,6 @@ -/**** POSIXS ^*****************************************************************/ +/**** POSIXS ******************************************************************/ #include +#include /**** RELABSD *****************************************************************/ #include @@ -66,9 +67,52 @@ enum relabsd_parameters_run_mode relabsd_parameters_get_execution_mode struct relabsd_axis * relabsd_parameters_get_axis ( const enum relabsd_axis_name i, - const struct relabsd_parameters parameters [const restrict static 1] + struct relabsd_parameters parameters [const restrict static 1] ) { return (parameters->axes + i); } +void relabsd_parameters_set_timeout +( + const int timeout_msec, + struct relabsd_parameters parameters [const restrict static 1] +) +{ + if (timeout_msec == 0) + { + parameters->use_timeout = 0; + + return; + } + + parameters->use_timeout = 1; + + (void) memset((void *) &(parameters->timeout), 0, sizeof(struct timeval)); + + /* FIXME: Not sure that's correct. */ + parameters->timeout.tv_sec = (time_t) (timeout_msec / 1000); + parameters->timeout.tv_usec = + ( + ((suseconds_t) timeout_msec) + * ((suseconds_t) 1000) + ); + + return; +} + +int relabsd_parameters_use_timeout +( + const struct relabsd_parameters parameters [const restrict static 1] +) +{ + return parameters->use_timeout; +} + +struct timeval relabsd_parameters_get_timeout +( + const struct relabsd_parameters parameters [const restrict static 1] +) +{ + return parameters->timeout; +} -- cgit v1.2.3-70-g09d2