1 #ifndef _URCU_RCUJA_RANGE_H
2 #define _URCU_RCUJA_RANGE_H
7 * Userspace RCU library - RCU Judy Array Range Support
9 * Copyright 2012-2013 - Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
11 * This library is free software; you can redistribute it and/or
12 * modify it under the terms of the GNU Lesser General Public
13 * License as published by the Free Software Foundation; either
14 * version 2.1 of the License, or (at your option) any later version.
16 * This library is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
19 * Lesser General Public License for more details.
21 * You should have received a copy of the GNU Lesser General Public
22 * License along with this library; if not, write to the Free Software
23 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
25 * Include this file _after_ including your URCU flavor.
28 #include <urcu/rcuja.h>
35 struct cds_ja_range
*cds_ja_range_lookup(struct cds_ja
*ja
, uint64_t key
);
37 struct cds_ja_range
*cds_ja_range_lock(struct cds_ja_range
*range
);
39 void cds_ja_range_unlock(struct cds_ja_range
*range
);
41 int cds_ja_range_add(struct cds_ja
*ja
,
42 uint64_t start
, /* inclusive */
43 uint64_t end
, /* inclusive */
46 int cds_ja_range_del(struct cds_ja
*ja
, struct cds_ja_range
*range
);
48 struct cds_ja
*_cds_ja_range_new(const struct rcu_flavor_struct
*flavor
);
51 struct cds_ja
*cds_ja_range_new(void)
53 return _cds_ja_range_new(&rcu_flavor
);
56 int cds_ja_range_destroy(struct cds_ja
*ja
,
57 void (*free_priv
)(void *ptr
));
63 #endif /* _URCU_RCUJA_RANGE_H */
This page took 0.031502 seconds and 5 git commands to generate.