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 9 extern "C" { 10 #endif 11 12 /* Currently we only support up to 32 sets in vBF */ 13 #define RTE_MEMBER_MAX_BF 32 14 15 int 16 rte_member_create_vbf(struct rte_member_setsum *ss, 17 const struct rte_member_parameters *params); 18 19 int 20 rte_member_lookup_vbf(const struct rte_member_setsum *setsum, 21 const void *key, member_set_t *set_id); 22 23 uint32_t 24 rte_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 28 uint32_t 29 rte_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 33 uint32_t 34 rte_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 39 int 40 rte_member_add_vbf(const struct rte_member_setsum *setsum, 41 const void *key, member_set_t set_id); 42 43 void 44 rte_member_free_vbf(struct rte_member_setsum *ss); 45 46 void 47 rte_member_reset_vbf(const struct rte_member_setsum *setsum); 48 49 #ifdef __cplusplus 50 } 51 #endif 52 53 #endif /* _RTE_MEMBER_VBF_H_ */ 54