SAI Metadata
Loading...
Searching...
No Matches
SAI - IPMC group specific API definitions

Classes

struct  _sai_ipmc_group_api_t
 IPMC group methods table retrieved with sai_api_query() More...
 

Typedefs

typedef enum _sai_ipmc_group_attr_t sai_ipmc_group_attr_t
 Attributes for IPMC group.
 
typedef enum _sai_ipmc_group_member_attr_t sai_ipmc_group_member_attr_t
 
typedef sai_status_t(* sai_create_ipmc_group_fn) (_Out_ sai_object_id_t *ipmc_group_id, _In_ sai_object_id_t switch_id, _In_ uint32_t attr_count, _In_ const sai_attribute_t *attr_list)
 Create IPMC group.
 
typedef sai_status_t(* sai_remove_ipmc_group_fn) (_In_ sai_object_id_t ipmc_group_id)
 Remove IPMC group.
 
typedef sai_status_t(* sai_set_ipmc_group_attribute_fn) (_In_ sai_object_id_t ipmc_group_id, _In_ const sai_attribute_t *attr)
 Set IPMC Group attribute.
 
typedef sai_status_t(* sai_get_ipmc_group_attribute_fn) (_In_ sai_object_id_t ipmc_group_id, _In_ uint32_t attr_count, _Inout_ sai_attribute_t *attr_list)
 Get IPMC Group attribute.
 
typedef sai_status_t(* sai_create_ipmc_group_member_fn) (_Out_ sai_object_id_t *ipmc_group_member_id, _In_ sai_object_id_t switch_id, _In_ uint32_t attr_count, _In_ const sai_attribute_t *attr_list)
 Create IPMC group member.
 
typedef sai_status_t(* sai_remove_ipmc_group_member_fn) (_In_ sai_object_id_t ipmc_group_member_id)
 Remove IPMC group member.
 
typedef sai_status_t(* sai_set_ipmc_group_member_attribute_fn) (_In_ sai_object_id_t ipmc_group_member_id, _In_ const sai_attribute_t *attr)
 Set IPMC Group attribute.
 
typedef sai_status_t(* sai_get_ipmc_group_member_attribute_fn) (_In_ sai_object_id_t ipmc_group_member_id, _In_ uint32_t attr_count, _Inout_ sai_attribute_t *attr_list)
 Get IPMC Group attribute.
 
typedef struct _sai_ipmc_group_api_t sai_ipmc_group_api_t
 IPMC group methods table retrieved with sai_api_query()
 

Enumerations

enum  _sai_ipmc_group_attr_t {
  SAI_IPMC_GROUP_ATTR_START , SAI_IPMC_GROUP_ATTR_IPMC_OUTPUT_COUNT = SAI_IPMC_GROUP_ATTR_START , SAI_IPMC_GROUP_ATTR_IPMC_MEMBER_LIST , SAI_IPMC_GROUP_ATTR_END ,
  SAI_IPMC_GROUP_ATTR_CUSTOM_RANGE_START = 0x10000000 , SAI_IPMC_GROUP_ATTR_CUSTOM_RANGE_END
}
 Attributes for IPMC group. More...
 
enum  _sai_ipmc_group_member_attr_t {
  SAI_IPMC_GROUP_MEMBER_ATTR_START , SAI_IPMC_GROUP_MEMBER_ATTR_IPMC_GROUP_ID = SAI_IPMC_GROUP_MEMBER_ATTR_START , SAI_IPMC_GROUP_MEMBER_ATTR_IPMC_OUTPUT_ID , SAI_IPMC_GROUP_MEMBER_ATTR_END ,
  SAI_IPMC_GROUP_MEMBER_ATTR_CUSTOM_RANGE_START = 0x10000000 , SAI_IPMC_GROUP_MEMBER_ATTR_CUSTOM_RANGE_END
}
 

Detailed Description

Typedef Documentation

◆ sai_create_ipmc_group_fn

typedef sai_status_t(* sai_create_ipmc_group_fn) (_Out_ sai_object_id_t *ipmc_group_id, _In_ sai_object_id_t switch_id, _In_ uint32_t attr_count, _In_ const sai_attribute_t *attr_list)

Create IPMC group.

Parameters
[out]ipmc_group_idIPMC group id
[in]switch_idSwitch id
[in]attr_countNumber of attributes
[in]attr_listArray of attributes
Returns
SAI_STATUS_SUCCESS on success, failure status code on error

Definition at line 124 of file saiipmcgroup.h.

◆ sai_create_ipmc_group_member_fn

typedef sai_status_t(* sai_create_ipmc_group_member_fn) (_Out_ sai_object_id_t *ipmc_group_member_id, _In_ sai_object_id_t switch_id, _In_ uint32_t attr_count, _In_ const sai_attribute_t *attr_list)

Create IPMC group member.

Parameters
[out]ipmc_group_member_idIPMC group member id
[in]switch_idSwitch ID
[in]attr_countNumber of attributes
[in]attr_listArray of attributes
Returns
SAI_STATUS_SUCCESS on success, failure status code on error

Definition at line 176 of file saiipmcgroup.h.

◆ sai_get_ipmc_group_attribute_fn

typedef sai_status_t(* sai_get_ipmc_group_attribute_fn) (_In_ sai_object_id_t ipmc_group_id, _In_ uint32_t attr_count, _Inout_ sai_attribute_t *attr_list)

Get IPMC Group attribute.

Parameters
[in]ipmc_group_idIPMC group id
[in]attr_countNumber of attributes
[in,out]attr_listArray of attributes
Returns
SAI_STATUS_SUCCESS on success, failure status code on error

Definition at line 161 of file saiipmcgroup.h.

◆ sai_get_ipmc_group_member_attribute_fn

typedef sai_status_t(* sai_get_ipmc_group_member_attribute_fn) (_In_ sai_object_id_t ipmc_group_member_id, _In_ uint32_t attr_count, _Inout_ sai_attribute_t *attr_list)

Get IPMC Group attribute.

Parameters
[in]ipmc_group_member_idIPMC group member ID
[in]attr_countNumber of attributes
[in,out]attr_listArray of attributes
Returns
SAI_STATUS_SUCCESS on success, failure status code on error

Definition at line 213 of file saiipmcgroup.h.

◆ sai_remove_ipmc_group_fn

typedef sai_status_t(* sai_remove_ipmc_group_fn) (_In_ sai_object_id_t ipmc_group_id)

Remove IPMC group.

Parameters
[in]ipmc_group_idIPMC group id
Returns
SAI_STATUS_SUCCESS on success, failure status code on error

Definition at line 137 of file saiipmcgroup.h.

◆ sai_remove_ipmc_group_member_fn

typedef sai_status_t(* sai_remove_ipmc_group_member_fn) (_In_ sai_object_id_t ipmc_group_member_id)

Remove IPMC group member.

Parameters
[in]ipmc_group_member_idIPMC group member id
Returns
SAI_STATUS_SUCCESS on success, failure status code on error

Definition at line 189 of file saiipmcgroup.h.

◆ sai_set_ipmc_group_attribute_fn

typedef sai_status_t(* sai_set_ipmc_group_attribute_fn) (_In_ sai_object_id_t ipmc_group_id, _In_ const sai_attribute_t *attr)

Set IPMC Group attribute.

Parameters
[in]ipmc_group_idIPMC group id
[in]attrAttribute
Returns
SAI_STATUS_SUCCESS on success, failure status code on error

Definition at line 148 of file saiipmcgroup.h.

◆ sai_set_ipmc_group_member_attribute_fn

typedef sai_status_t(* sai_set_ipmc_group_member_attribute_fn) (_In_ sai_object_id_t ipmc_group_member_id, _In_ const sai_attribute_t *attr)

Set IPMC Group attribute.

Parameters
[in]ipmc_group_member_idIPMC group member id
[in]attrAttribute
Returns
SAI_STATUS_SUCCESS on success, failure status code on error

Definition at line 200 of file saiipmcgroup.h.

Enumeration Type Documentation

◆ _sai_ipmc_group_attr_t

Attributes for IPMC group.

Enumerator
SAI_IPMC_GROUP_ATTR_START 

Start of attributes.

SAI_IPMC_GROUP_ATTR_IPMC_OUTPUT_COUNT 

Number of IPMC interfaces in the group.

Value Type:
sai_uint32_t
Flags:
READ_ONLY
SAI_IPMC_GROUP_ATTR_IPMC_MEMBER_LIST 

IPMC member list.

Value Type:
sai_object_list_t
Flags:
READ_ONLY
Allowed object types
SAI_OBJECT_TYPE_IPMC_GROUP_MEMBER
SAI_IPMC_GROUP_ATTR_END 

End of attributes.

SAI_IPMC_GROUP_ATTR_CUSTOM_RANGE_START 

Custom range base value

SAI_IPMC_GROUP_ATTR_CUSTOM_RANGE_END 

End of custom range base

Definition at line 39 of file saiipmcgroup.h.

◆ _sai_ipmc_group_member_attr_t

Enumerator
SAI_IPMC_GROUP_MEMBER_ATTR_START 

Start of attributes.

SAI_IPMC_GROUP_MEMBER_ATTR_IPMC_GROUP_ID 

IPMC group id.

Value Type:
sai_object_id_t
Flags:
MANDATORY_ON_CREATE | CREATE_ONLY
Allowed object types
SAI_OBJECT_TYPE_IPMC_GROUP
SAI_IPMC_GROUP_MEMBER_ATTR_IPMC_OUTPUT_ID 

IPMC output id.

Value Type:
sai_object_id_t
Flags:
MANDATORY_ON_CREATE | CREATE_ONLY
Allowed object types
SAI_OBJECT_TYPE_ROUTER_INTERFACE, SAI_OBJECT_TYPE_TUNNEL
SAI_IPMC_GROUP_MEMBER_ATTR_END 

End of attributes.

SAI_IPMC_GROUP_MEMBER_ATTR_CUSTOM_RANGE_START 

Custom range base value

SAI_IPMC_GROUP_MEMBER_ATTR_CUSTOM_RANGE_END 

End of custom range base

Definition at line 76 of file saiipmcgroup.h.