spdx tags for c and h files
[protos/libecoli.git] / lib / ecoli_node_int.h
1 /* SPDX-License-Identifier: BSD-3-Clause
2  * Copyright (c) 2016, Olivier MATZ <zer0@droids-corp.org>
3  */
4
5 #ifndef ECOLI_NODE_INT_
6 #define ECOLI_NODE_INT_
7
8 #include <stdint.h>
9
10 #include <ecoli_node.h>
11
12 /* ec_node("int", ...) can be used too
13  * default is no limit, base 10 */
14
15 struct ec_node *ec_node_int(const char *id, int64_t min,
16                         int64_t max, unsigned int base);
17
18 int ec_node_int_disable_limits(struct ec_node *node);
19 int ec_node_int_set_limits(struct ec_node *node, int64_t min,
20                         int64_t max);
21 int ec_node_int_set_base(struct ec_node *node, unsigned int base);
22
23 int ec_node_int_getval(const struct ec_node *node, const char *str,
24                         int64_t *result);
25
26
27
28 struct ec_node *ec_node_uint(const char *id, uint64_t min,
29                         uint64_t max, unsigned int base);
30 int ec_node_uint_disable_limits(struct ec_node *node);
31 int ec_node_uint_set_limits(struct ec_node *node, uint64_t min,
32                         uint64_t max);
33 int ec_node_uint_set_base(struct ec_node *node, unsigned int base);
34
35 int ec_node_uint_getval(const struct ec_node *node, const char *str,
36                         uint64_t *result);
37
38
39 #endif