1174a1631SBruce Richardson /* SPDX-License-Identifier: BSD-3-Clause 2174a1631SBruce Richardson * Copyright(c) 2016-2017 Intel Corporation 3f8be1786SSlawomir Mrozowicz */ 4f8be1786SSlawomir Mrozowicz 5f8be1786SSlawomir Mrozowicz #ifndef _CPERF_ 6f8be1786SSlawomir Mrozowicz #define _CPERF_ 7f8be1786SSlawomir Mrozowicz 8f8be1786SSlawomir Mrozowicz #include <rte_crypto.h> 9f8be1786SSlawomir Mrozowicz 10f8be1786SSlawomir Mrozowicz #include "cperf_ops.h" 11f8be1786SSlawomir Mrozowicz 12f8be1786SSlawomir Mrozowicz struct cperf_options; 13f8be1786SSlawomir Mrozowicz struct cperf_test_vector; 14f8be1786SSlawomir Mrozowicz struct cperf_op_fns; 15f8be1786SSlawomir Mrozowicz 16b3bbd9e5SSlawomir Mrozowicz typedef void *(*cperf_constructor_t)( 17b3bbd9e5SSlawomir Mrozowicz struct rte_mempool *sess_mp, 18b3bbd9e5SSlawomir Mrozowicz uint8_t dev_id, 19b3bbd9e5SSlawomir Mrozowicz uint16_t qp_id, 20f8be1786SSlawomir Mrozowicz const struct cperf_options *options, 21f8be1786SSlawomir Mrozowicz const struct cperf_test_vector *t_vec, 22*76a48d8aSJack Bond-Preston const struct cperf_op_fns *op_fns, 23*76a48d8aSJack Bond-Preston void **sess); 24f8be1786SSlawomir Mrozowicz 25f8be1786SSlawomir Mrozowicz typedef int (*cperf_runner_t)(void *test_ctx); 26f8be1786SSlawomir Mrozowicz typedef void (*cperf_destructor_t)(void *test_ctx); 27f8be1786SSlawomir Mrozowicz 28f8be1786SSlawomir Mrozowicz struct cperf_test { 29f8be1786SSlawomir Mrozowicz cperf_constructor_t constructor; 30f8be1786SSlawomir Mrozowicz cperf_runner_t runner; 31f8be1786SSlawomir Mrozowicz cperf_destructor_t destructor; 32f8be1786SSlawomir Mrozowicz }; 33f8be1786SSlawomir Mrozowicz 34f8be1786SSlawomir Mrozowicz #endif /* _CPERF_ */ 35