SAI Metadata
Loading...
Searching...
No Matches
saicounter.h
Go to the documentation of this file.
1
29#if !defined (__SAICOUNTER_H_)
30#define __SAICOUNTER_H_
31
32#include <saitypes.h>
33
44{
47
49
55{
60
61 /* READ-WRITE */
62
71
80
85
88
91
93
104typedef sai_status_t (*sai_create_counter_fn)(
105 _Out_ sai_object_id_t *counter_id,
106 _In_ sai_object_id_t switch_id,
107 _In_ uint32_t attr_count,
108 _In_ const sai_attribute_t *attr_list);
109
117typedef sai_status_t (*sai_remove_counter_fn)(
118 _In_ sai_object_id_t counter_id);
119
128typedef sai_status_t (*sai_set_counter_attribute_fn)(
129 _In_ sai_object_id_t counter_id,
130 _In_ const sai_attribute_t *attr);
131
141typedef sai_status_t (*sai_get_counter_attribute_fn)(
142 _In_ sai_object_id_t counter_id,
143 _In_ uint32_t attr_count,
144 _Inout_ sai_attribute_t *attr_list);
145
150{
153
156
159
161
172typedef sai_status_t (*sai_get_counter_stats_fn)(
173 _In_ sai_object_id_t counter_id,
174 _In_ uint32_t number_of_counters,
175 _In_ const sai_stat_id_t *counter_ids,
176 _Out_ uint64_t *counters);
177
189typedef sai_status_t (*sai_get_counter_stats_ext_fn)(
190 _In_ sai_object_id_t counter_id,
191 _In_ uint32_t number_of_counters,
192 _In_ const sai_stat_id_t *counter_ids,
193 _In_ sai_stats_mode_t mode,
194 _Out_ uint64_t *counters);
195
205typedef sai_status_t (*sai_clear_counter_stats_fn)(
206 _In_ sai_object_id_t counter_id,
207 _In_ uint32_t number_of_counters,
208 _In_ const sai_stat_id_t *counter_ids);
209
213typedef struct _sai_counter_api_t
214{
215 sai_create_counter_fn create_counter;
216 sai_remove_counter_fn remove_counter;
217 sai_set_counter_attribute_fn set_counter_attribute;
218 sai_get_counter_attribute_fn get_counter_attribute;
219 sai_get_counter_stats_fn get_counter_stats;
220 sai_get_counter_stats_ext_fn get_counter_stats_ext;
221 sai_clear_counter_stats_fn clear_counter_stats;
222
224
228#endif
sai_status_t(* sai_create_counter_fn)(_Out_ sai_object_id_t *counter_id, _In_ sai_object_id_t switch_id, _In_ uint32_t attr_count, _In_ const sai_attribute_t *attr_list)
Create counter.
Definition saicounter.h:104
enum _sai_counter_type_t sai_counter_type_t
Counter type.
sai_status_t(* sai_get_counter_stats_fn)(_In_ sai_object_id_t counter_id, _In_ uint32_t number_of_counters, _In_ const sai_stat_id_t *counter_ids, _Out_ uint64_t *counters)
Get counter statistics counters. Deprecated for backward compatibility.
Definition saicounter.h:172
enum _sai_counter_attr_t sai_counter_attr_t
Attribute Id in sai_set_counter_attribute() and sai_get_counter_attribute() calls.
_sai_counter_type_t
Counter type.
Definition saicounter.h:44
struct _sai_counter_api_t sai_counter_api_t
Counter methods table retrieved with sai_api_query()
sai_status_t(* sai_get_counter_attribute_fn)(_In_ sai_object_id_t counter_id, _In_ uint32_t attr_count, _Inout_ sai_attribute_t *attr_list)
Get counter attribute Value.
Definition saicounter.h:141
sai_status_t(* sai_clear_counter_stats_fn)(_In_ sai_object_id_t counter_id, _In_ uint32_t number_of_counters, _In_ const sai_stat_id_t *counter_ids)
Clear counter statistics counters.
Definition saicounter.h:205
sai_status_t(* sai_remove_counter_fn)(_In_ sai_object_id_t counter_id)
Remove counter.
Definition saicounter.h:117
_sai_counter_stat_t
Enum defining statistics for Counter.
Definition saicounter.h:150
_sai_counter_attr_t
Attribute Id in sai_set_counter_attribute() and sai_get_counter_attribute() calls.
Definition saicounter.h:55
sai_status_t(* sai_set_counter_attribute_fn)(_In_ sai_object_id_t counter_id, _In_ const sai_attribute_t *attr)
Set counter attribute Value.
Definition saicounter.h:128
sai_status_t(* sai_get_counter_stats_ext_fn)(_In_ sai_object_id_t counter_id, _In_ uint32_t number_of_counters, _In_ const sai_stat_id_t *counter_ids, _In_ sai_stats_mode_t mode, _Out_ uint64_t *counters)
Get counter statistics counters extended.
Definition saicounter.h:189
enum _sai_counter_stat_t sai_counter_stat_t
Enum defining statistics for Counter.
@ SAI_COUNTER_TYPE_REGULAR
Definition saicounter.h:46
@ SAI_COUNTER_STAT_BYTES
Definition saicounter.h:155
@ SAI_COUNTER_STAT_CUSTOM_RANGE_BASE
Definition saicounter.h:158
@ SAI_COUNTER_STAT_PACKETS
Definition saicounter.h:152
@ SAI_COUNTER_ATTR_TYPE
Counter.
Definition saicounter.h:70
@ SAI_COUNTER_ATTR_LABEL
Label attribute used to unique identify counter.
Definition saicounter.h:79
@ SAI_COUNTER_ATTR_START
Start of attributes.
Definition saicounter.h:59
@ SAI_COUNTER_ATTR_CUSTOM_RANGE_START
Definition saicounter.h:87
@ SAI_COUNTER_ATTR_CUSTOM_RANGE_END
Definition saicounter.h:90
@ SAI_COUNTER_ATTR_END
End of attributes.
Definition saicounter.h:84
enum _sai_stats_mode_t sai_stats_mode_t
SAI statistics modes.
This module defines SAI portable types.
Counter methods table retrieved with sai_api_query()
Definition saicounter.h:214