DPDK 25.03.0-rc0
rte_member_vbf.h
1/* SPDX-License-Identifier: BSD-3-Clause
2 * Copyright(c) 2017 Intel Corporation
3 */
4
5#ifndef _RTE_MEMBER_VBF_H_
6#define _RTE_MEMBER_VBF_H_
7
8#ifdef __cplusplus
9extern "C" {
10#endif
11
12/* Currently we only support up to 32 sets in vBF */
13#define RTE_MEMBER_MAX_BF 32
14
15int
16rte_member_create_vbf(struct rte_member_setsum *ss,
17 const struct rte_member_parameters *params);
18
19int
20rte_member_lookup_vbf(const struct rte_member_setsum *setsum,
21 const void *key, member_set_t *set_id);
22
23uint32_t
24rte_member_lookup_bulk_vbf(const struct rte_member_setsum *setsum,
25 const void **keys, uint32_t num_keys,
26 member_set_t *set_ids);
27
28uint32_t
29rte_member_lookup_multi_vbf(const struct rte_member_setsum *setsum,
30 const void *key, uint32_t match_per_key,
31 member_set_t *set_id);
32
33uint32_t
34rte_member_lookup_multi_bulk_vbf(const struct rte_member_setsum *setsum,
35 const void **keys, uint32_t num_keys, uint32_t match_per_key,
36 uint32_t *match_count,
37 member_set_t *set_ids);
38
39int
40rte_member_add_vbf(const struct rte_member_setsum *setsum,
41 const void *key, member_set_t set_id);
42
43void
44rte_member_free_vbf(struct rte_member_setsum *ss);
45
46void
47rte_member_reset_vbf(const struct rte_member_setsum *setsum);
48
49#ifdef __cplusplus
50}
51#endif
52
53#endif /* _RTE_MEMBER_VBF_H_ */
uint16_t member_set_t
Definition: rte_member.h:64