summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNathanael Sensfelder <SpamShield0@MultiAgentSystems.org>2020-01-04 21:31:55 +0100
committerNathanael Sensfelder <SpamShield0@MultiAgentSystems.org>2020-01-04 21:31:55 +0100
commitee48214209e66aa8c6f353262b175895373f76df (patch)
treec2b61a4bd702602d856f613992c46a802e0a888c /src/config/parameters/parameters_accessors.c
parent0c68e544b113f0493b9b80511c26c1e4584bd1e7 (diff)
...
Diffstat (limited to 'src/config/parameters/parameters_accessors.c')
-rw-r--r--src/config/parameters/parameters_accessors.c48
1 files changed, 46 insertions, 2 deletions
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 <stdlib.h>
+#include <string.h>
/**** RELABSD *****************************************************************/
#include <relabsd/config/parameters.h>
@@ -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;
+}