NVIDIA DOCA SDK Data Center on a Chip Framework Documentation
doca_flow_definitions.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES, ALL RIGHTS RESERVED.
3  *
4  * This software product is a proprietary product of NVIDIA CORPORATION &
5  * AFFILIATES (the "Company") and all right, title, and interest in and to the
6  * software product, including all associated intellectual property rights, are
7  * and shall remain exclusively with the Company.
8  *
9  * This software product is governed by the End User License Agreement
10  * provided with the software product.
11  *
12  */
13 
14 #ifndef DOCA_FLOW_DEFINITIONS_H_
15 #define DOCA_FLOW_DEFINITIONS_H_
16 
17 #include <stdbool.h>
18 #include <stdint.h>
19 #include <stdio.h>
20 
21 #include <doca_compat.h>
22 #include <doca_error.h>
23 
24 #ifdef __cplusplus
25 extern "C" {
26 #endif
27 
31 struct doca_flow_definitions_cfg;
32 
36 struct doca_flow_definitions;
37 
47 doca_error_t doca_flow_definitions_cfg_create(struct doca_flow_definitions_cfg **defs_cfg);
48 
58 doca_error_t doca_flow_definitions_cfg_destroy(struct doca_flow_definitions_cfg *defs_cfg);
59 
70 doca_error_t doca_flow_definitions_create(struct doca_flow_definitions_cfg *defs_cfg,
71  struct doca_flow_definitions **defs);
72 
87 doca_error_t doca_flow_definitions_add_field(struct doca_flow_definitions *defs,
88  const char *field_opcode_str,
89  uint32_t field_offset,
90  uint32_t field_length);
91 
99 void doca_flow_definitions_destroy(struct doca_flow_definitions *defs);
100 
101 #ifdef __cplusplus
102 } /* extern "C" */
103 #endif
104 
105 #endif /* DOCA_FLOW_DEFINITIONS_H_ */
DOCA_EXPERIMENTAL doca_error_t doca_flow_definitions_cfg_destroy(struct doca_flow_definitions_cfg *defs_cfg)
Destroys a definitions configuration object.
DOCA_EXPERIMENTAL doca_error_t doca_flow_definitions_add_field(struct doca_flow_definitions *defs, const char *field_opcode_str, uint32_t field_offset, uint32_t field_length)
Add a field to the definitions object.
DOCA_EXPERIMENTAL void doca_flow_definitions_destroy(struct doca_flow_definitions *defs)
Destroys a definitions object.
DOCA_EXPERIMENTAL doca_error_t doca_flow_definitions_create(struct doca_flow_definitions_cfg *defs_cfg, struct doca_flow_definitions **defs)
Creates a definitions object.
DOCA_EXPERIMENTAL doca_error_t doca_flow_definitions_cfg_create(struct doca_flow_definitions_cfg **defs_cfg)
Creates a definitions configuration object.
#define DOCA_EXPERIMENTAL
To set a Symbol (or specifically a function) as experimental.
Definition: doca_compat.h:103
enum doca_error doca_error_t
DOCA API return codes.