@@ -131,6 +131,59 @@ typedef void (*sai_ha_scope_event_notification_fn)(
131131 _In_ uint32_t count ,
132132 _In_ const sai_ha_scope_event_data_t * data );
133133
134+ /**
135+ * @brief Flow bulk get session event type
136+ */
137+ typedef enum _sai_flow_bulk_get_session_event_t
138+ {
139+ /** Bulk get session finished */
140+ SAI_FLOW_BULK_GET_SESSION_EVENT_FINISHED ,
141+
142+ /** Flow entry received */
143+ SAI_FLOW_BULK_GET_SESSION_EVENT_FLOW_ENTRY ,
144+
145+ } sai_flow_bulk_get_session_event_t ;
146+
147+ /**
148+ * @brief Notification data format received from SAI flow bulk get session callback
149+ *
150+ * @count attr[attr_count]
151+ */
152+ typedef struct _sai_flow_bulk_get_session_event_data_t
153+ {
154+ /** Flow entry */
155+ sai_flow_entry_t flow_entry ;
156+
157+ /** Attributes count */
158+ uint32_t attr_count ;
159+
160+ /**
161+ * @brief Attributes
162+ *
163+ * @objects SAI_OBJECT_TYPE_FLOW_ENTRY
164+ */
165+ sai_attribute_t * attr ;
166+
167+ } sai_flow_bulk_get_session_event_data_t ;
168+
169+ /**
170+ * @brief Flow bulk get session event notification
171+ *
172+ * Passed as a parameter into sai_initialize_switch()
173+ *
174+ * @count data[count]
175+ *
176+ * @param[in] event_type Type of the event
177+ * @param[in] flow_bulk_session_id ID of the flow bulk session
178+ * @param[in] count Number of notifications
179+ * @param[in] data Array of flow bulk get session events
180+ */
181+ typedef void (* sai_flow_bulk_get_session_event_notification_fn )(
182+ _In_ sai_flow_bulk_get_session_event_t event_type ,
183+ _In_ sai_object_id_t flow_bulk_session_id ,
184+ _In_ uint32_t count ,
185+ _In_ const sai_flow_bulk_get_session_event_data_t * data );
186+
134187/**
135188 * @brief SAI switch attribute extensions.
136189 *
@@ -191,6 +244,17 @@ typedef enum _sai_switch_attr_extensions_t
191244 */
192245 SAI_SWITCH_ATTR_HA_SCOPE_EVENT_NOTIFY ,
193246
247+ /**
248+ * @brief DASH flow bulk get session event notification
249+ *
250+ * Use sai_flow_bulk_get_session_event_notification_fn as notification function.
251+ *
252+ * @type sai_pointer_t sai_flow_bulk_get_session_event_notification_fn
253+ * @flags CREATE_AND_SET
254+ * @default NULL
255+ */
256+ SAI_SWITCH_ATTR_FLOW_BULK_GET_SESSION_EVENT_NOTIFY ,
257+
194258 SAI_SWITCH_ATTR_EXTENSIONS_RANGE_END
195259
196260} sai_switch_attr_extensions_t ;
0 commit comments