SAI Metadata
Loading...
Searching...
No Matches
SAI - Extension specific API definitions

Classes

struct  _sai_dash_meter_api_t
 

Typedefs

typedef enum _sai_meter_bucket_attr_t sai_meter_bucket_attr_t
 Attribute ID for dash_meter_meter_bucket.
 
typedef enum _sai_meter_policy_attr_t sai_meter_policy_attr_t
 Attribute ID for dash_meter_meter_policy.
 
typedef enum _sai_meter_rule_attr_t sai_meter_rule_attr_t
 Attribute ID for dash_meter_meter_rule.
 
typedef sai_status_t(* sai_create_meter_bucket_fn) (_Out_ sai_object_id_t *meter_bucket_id, _In_ sai_object_id_t switch_id, _In_ uint32_t attr_count, _In_ const sai_attribute_t *attr_list)
 Create dash_meter_meter_bucket.
 
typedef sai_status_t(* sai_remove_meter_bucket_fn) (_In_ sai_object_id_t meter_bucket_id)
 Remove dash_meter_meter_bucket.
 
typedef sai_status_t(* sai_set_meter_bucket_attribute_fn) (_In_ sai_object_id_t meter_bucket_id, _In_ const sai_attribute_t *attr)
 Set attribute for dash_meter_meter_bucket.
 
typedef sai_status_t(* sai_get_meter_bucket_attribute_fn) (_In_ sai_object_id_t meter_bucket_id, _In_ uint32_t attr_count, _Inout_ sai_attribute_t *attr_list)
 Get attribute for dash_meter_meter_bucket.
 
typedef sai_status_t(* sai_create_meter_policy_fn) (_Out_ sai_object_id_t *meter_policy_id, _In_ sai_object_id_t switch_id, _In_ uint32_t attr_count, _In_ const sai_attribute_t *attr_list)
 Create dash_meter_meter_policy.
 
typedef sai_status_t(* sai_remove_meter_policy_fn) (_In_ sai_object_id_t meter_policy_id)
 Remove dash_meter_meter_policy.
 
typedef sai_status_t(* sai_set_meter_policy_attribute_fn) (_In_ sai_object_id_t meter_policy_id, _In_ const sai_attribute_t *attr)
 Set attribute for dash_meter_meter_policy.
 
typedef sai_status_t(* sai_get_meter_policy_attribute_fn) (_In_ sai_object_id_t meter_policy_id, _In_ uint32_t attr_count, _Inout_ sai_attribute_t *attr_list)
 Get attribute for dash_meter_meter_policy.
 
typedef sai_status_t(* sai_create_meter_rule_fn) (_Out_ sai_object_id_t *meter_rule_id, _In_ sai_object_id_t switch_id, _In_ uint32_t attr_count, _In_ const sai_attribute_t *attr_list)
 Create dash_meter_meter_rule.
 
typedef sai_status_t(* sai_remove_meter_rule_fn) (_In_ sai_object_id_t meter_rule_id)
 Remove dash_meter_meter_rule.
 
typedef sai_status_t(* sai_set_meter_rule_attribute_fn) (_In_ sai_object_id_t meter_rule_id, _In_ const sai_attribute_t *attr)
 Set attribute for dash_meter_meter_rule.
 
typedef sai_status_t(* sai_get_meter_rule_attribute_fn) (_In_ sai_object_id_t meter_rule_id, _In_ uint32_t attr_count, _Inout_ sai_attribute_t *attr_list)
 Get attribute for dash_meter_meter_rule.
 
typedef struct _sai_dash_meter_api_t sai_dash_meter_api_t
 

Enumerations

enum  _sai_meter_bucket_attr_t {
  SAI_METER_BUCKET_ATTR_START , SAI_METER_BUCKET_ATTR_ENI_ID = SAI_METER_BUCKET_ATTR_START , SAI_METER_BUCKET_ATTR_METER_CLASS , SAI_METER_BUCKET_ATTR_OUTBOUND_BYTES_COUNTER ,
  SAI_METER_BUCKET_ATTR_INBOUND_BYTES_COUNTER , SAI_METER_BUCKET_ATTR_END , SAI_METER_BUCKET_ATTR_CUSTOM_RANGE_START = 0x10000000 , SAI_METER_BUCKET_ATTR_CUSTOM_RANGE_END
}
 Attribute ID for dash_meter_meter_bucket. More...
 
enum  _sai_meter_policy_attr_t {
  SAI_METER_POLICY_ATTR_START , SAI_METER_POLICY_ATTR_IP_ADDR_FAMILY = SAI_METER_POLICY_ATTR_START , SAI_METER_POLICY_ATTR_END , SAI_METER_POLICY_ATTR_CUSTOM_RANGE_START = 0x10000000 ,
  SAI_METER_POLICY_ATTR_CUSTOM_RANGE_END
}
 Attribute ID for dash_meter_meter_policy. More...
 
enum  _sai_meter_rule_attr_t {
  SAI_METER_RULE_ATTR_START , SAI_METER_RULE_ATTR_METER_POLICY_ID = SAI_METER_RULE_ATTR_START , SAI_METER_RULE_ATTR_DIP , SAI_METER_RULE_ATTR_DIP_MASK ,
  SAI_METER_RULE_ATTR_METER_CLASS , SAI_METER_RULE_ATTR_PRIORITY , SAI_METER_RULE_ATTR_IP_ADDR_FAMILY , SAI_METER_RULE_ATTR_END ,
  SAI_METER_RULE_ATTR_CUSTOM_RANGE_START = 0x10000000 , SAI_METER_RULE_ATTR_CUSTOM_RANGE_END
}
 Attribute ID for dash_meter_meter_rule. More...
 

Detailed Description

Typedef Documentation

◆ sai_create_meter_bucket_fn

typedef sai_status_t(* sai_create_meter_bucket_fn) (_Out_ sai_object_id_t *meter_bucket_id, _In_ sai_object_id_t switch_id, _In_ uint32_t attr_count, _In_ const sai_attribute_t *attr_list)

Create dash_meter_meter_bucket.

Parameters
[out]meter_bucket_idEntry 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 212 of file saiexperimentaldashmeter.h.

◆ sai_create_meter_policy_fn

typedef sai_status_t(* sai_create_meter_policy_fn) (_Out_ sai_object_id_t *meter_policy_id, _In_ sai_object_id_t switch_id, _In_ uint32_t attr_count, _In_ const sai_attribute_t *attr_list)

Create dash_meter_meter_policy.

Parameters
[out]meter_policy_idEntry 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 264 of file saiexperimentaldashmeter.h.

◆ sai_create_meter_rule_fn

typedef sai_status_t(* sai_create_meter_rule_fn) (_Out_ sai_object_id_t *meter_rule_id, _In_ sai_object_id_t switch_id, _In_ uint32_t attr_count, _In_ const sai_attribute_t *attr_list)

Create dash_meter_meter_rule.

Parameters
[out]meter_rule_idEntry 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 316 of file saiexperimentaldashmeter.h.

◆ sai_get_meter_bucket_attribute_fn

typedef sai_status_t(* sai_get_meter_bucket_attribute_fn) (_In_ sai_object_id_t meter_bucket_id, _In_ uint32_t attr_count, _Inout_ sai_attribute_t *attr_list)

Get attribute for dash_meter_meter_bucket.

Parameters
[in]meter_bucket_idEntry 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 249 of file saiexperimentaldashmeter.h.

◆ sai_get_meter_policy_attribute_fn

typedef sai_status_t(* sai_get_meter_policy_attribute_fn) (_In_ sai_object_id_t meter_policy_id, _In_ uint32_t attr_count, _Inout_ sai_attribute_t *attr_list)

Get attribute for dash_meter_meter_policy.

Parameters
[in]meter_policy_idEntry 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 301 of file saiexperimentaldashmeter.h.

◆ sai_get_meter_rule_attribute_fn

typedef sai_status_t(* sai_get_meter_rule_attribute_fn) (_In_ sai_object_id_t meter_rule_id, _In_ uint32_t attr_count, _Inout_ sai_attribute_t *attr_list)

Get attribute for dash_meter_meter_rule.

Parameters
[in]meter_rule_idEntry 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 353 of file saiexperimentaldashmeter.h.

◆ sai_remove_meter_bucket_fn

typedef sai_status_t(* sai_remove_meter_bucket_fn) (_In_ sai_object_id_t meter_bucket_id)

Remove dash_meter_meter_bucket.

Parameters
[in]meter_bucket_idEntry id
Returns
SAI_STATUS_SUCCESS on success Failure status code on error

Definition at line 225 of file saiexperimentaldashmeter.h.

◆ sai_remove_meter_policy_fn

typedef sai_status_t(* sai_remove_meter_policy_fn) (_In_ sai_object_id_t meter_policy_id)

Remove dash_meter_meter_policy.

Parameters
[in]meter_policy_idEntry id
Returns
SAI_STATUS_SUCCESS on success Failure status code on error

Definition at line 277 of file saiexperimentaldashmeter.h.

◆ sai_remove_meter_rule_fn

typedef sai_status_t(* sai_remove_meter_rule_fn) (_In_ sai_object_id_t meter_rule_id)

Remove dash_meter_meter_rule.

Parameters
[in]meter_rule_idEntry id
Returns
SAI_STATUS_SUCCESS on success Failure status code on error

Definition at line 329 of file saiexperimentaldashmeter.h.

◆ sai_set_meter_bucket_attribute_fn

typedef sai_status_t(* sai_set_meter_bucket_attribute_fn) (_In_ sai_object_id_t meter_bucket_id, _In_ const sai_attribute_t *attr)

Set attribute for dash_meter_meter_bucket.

Parameters
[in]meter_bucket_idEntry id
[in]attrAttribute
Returns
SAI_STATUS_SUCCESS on success Failure status code on error

Definition at line 236 of file saiexperimentaldashmeter.h.

◆ sai_set_meter_policy_attribute_fn

typedef sai_status_t(* sai_set_meter_policy_attribute_fn) (_In_ sai_object_id_t meter_policy_id, _In_ const sai_attribute_t *attr)

Set attribute for dash_meter_meter_policy.

Parameters
[in]meter_policy_idEntry id
[in]attrAttribute
Returns
SAI_STATUS_SUCCESS on success Failure status code on error

Definition at line 288 of file saiexperimentaldashmeter.h.

◆ sai_set_meter_rule_attribute_fn

typedef sai_status_t(* sai_set_meter_rule_attribute_fn) (_In_ sai_object_id_t meter_rule_id, _In_ const sai_attribute_t *attr)

Set attribute for dash_meter_meter_rule.

Parameters
[in]meter_rule_idEntry id
[in]attrAttribute
Returns
SAI_STATUS_SUCCESS on success Failure status code on error

Definition at line 340 of file saiexperimentaldashmeter.h.

Enumeration Type Documentation

◆ _sai_meter_bucket_attr_t

Attribute ID for dash_meter_meter_bucket.

Enumerator
SAI_METER_BUCKET_ATTR_START 

Start of attributes.

SAI_METER_BUCKET_ATTR_ENI_ID 

Exact matched key eni_id.

Value Type:
sai_object_id_t
Flags:
MANDATORY_ON_CREATE | CREATE_ONLY
Allowed object types
SAI_OBJECT_TYPE_ENI
SAI_METER_BUCKET_ATTR_METER_CLASS 

Exact matched key meter_class.

Value Type:
sai_uint16_t
Flags:
MANDATORY_ON_CREATE | CREATE_ONLY
IsVlan:
false
SAI_METER_BUCKET_ATTR_OUTBOUND_BYTES_COUNTER 

Action meter_bucket_action parameter OUTBOUND_BYTES_COUNTER.

Value Type:
sai_uint64_t
Flags:
READ_ONLY
SAI_METER_BUCKET_ATTR_INBOUND_BYTES_COUNTER 

Action meter_bucket_action parameter INBOUND_BYTES_COUNTER.

Value Type:
sai_uint64_t
Flags:
READ_ONLY
SAI_METER_BUCKET_ATTR_END 

End of attributes.

SAI_METER_BUCKET_ATTR_CUSTOM_RANGE_START 

Custom range base value

SAI_METER_BUCKET_ATTR_CUSTOM_RANGE_END 

End of custom range base

Definition at line 39 of file saiexperimentaldashmeter.h.

◆ _sai_meter_policy_attr_t

Attribute ID for dash_meter_meter_policy.

Enumerator
SAI_METER_POLICY_ATTR_START 

Start of attributes.

SAI_METER_POLICY_ATTR_IP_ADDR_FAMILY 

Action check_ip_addr_family parameter IP_ADDR_FAMILY.

Value Type:
sai_ip_addr_family_t
Flags:
CREATE_AND_SET
Default value:
SAI_IP_ADDR_FAMILY_IPV4
IsResourceType:
true
SAI_METER_POLICY_ATTR_END 

End of attributes.

SAI_METER_POLICY_ATTR_CUSTOM_RANGE_START 

Custom range base value

SAI_METER_POLICY_ATTR_CUSTOM_RANGE_END 

End of custom range base

Definition at line 96 of file saiexperimentaldashmeter.h.

◆ _sai_meter_rule_attr_t

Attribute ID for dash_meter_meter_rule.

Enumerator
SAI_METER_RULE_ATTR_START 

Start of attributes.

SAI_METER_RULE_ATTR_METER_POLICY_ID 

Exact matched key meter_policy_id.

Value Type:
sai_object_id_t
Flags:
MANDATORY_ON_CREATE | CREATE_ONLY
Allowed object types
SAI_OBJECT_TYPE_METER_POLICY
IsResourceType:
true
SAI_METER_RULE_ATTR_DIP 

Ternary matched key dip.

Value Type:
sai_ip_address_t
Flags:
MANDATORY_ON_CREATE | CREATE_ONLY
SAI_METER_RULE_ATTR_DIP_MASK 

Ternary matched mask dip.

Value Type:
sai_ip_address_t
Flags:
MANDATORY_ON_CREATE | CREATE_ONLY
SAI_METER_RULE_ATTR_METER_CLASS 

Action set_policy_meter_class parameter METER_CLASS.

Value Type:
sai_uint16_t
Flags:
CREATE_AND_SET
IsVlan:
false
Default value:
0
SAI_METER_RULE_ATTR_PRIORITY 

Rule priority in table.

Value Type:
sai_uint32_t
Flags:
MANDATORY_ON_CREATE | CREATE_ONLY
SAI_METER_RULE_ATTR_IP_ADDR_FAMILY 

IP address family for resource accounting.

Value Type:
sai_ip_addr_family_t
Flags:
READ_ONLY
IsResourceType:
true
SAI_METER_RULE_ATTR_END 

End of attributes.

SAI_METER_RULE_ATTR_CUSTOM_RANGE_START 

Custom range base value

SAI_METER_RULE_ATTR_CUSTOM_RANGE_END 

End of custom range base

Definition at line 129 of file saiexperimentaldashmeter.h.