pim_base.hh

来自「BCAST Implementation for NS2」· HH 代码 · 共 2,220 行 · 第 1/5 页

HH
2,220
字号
	// Input values, 	const string&	xrl_sender_name, 	const string&	vif_name, 	const uint32_t&	vif_index, 	const IPv6&	source, 	const IPv6&	group) = 0;    /**     *  Pure-virtual function that needs to be implemented to:     *       *  Enable/disable/start/stop a PIM vif interface.     *       *  @param vif_name the name of the vif to enable/disable/start/stop.     */    virtual XrlCmdError pim_0_1_enable_vif(	// Input values, 	const string&	vif_name) = 0;    virtual XrlCmdError pim_0_1_disable_vif(	// Input values, 	const string&	vif_name) = 0;    virtual XrlCmdError pim_0_1_start_vif(	// Input values, 	const string&	vif_name) = 0;    virtual XrlCmdError pim_0_1_stop_vif(	// Input values, 	const string&	vif_name) = 0;    /**     *  Pure-virtual function that needs to be implemented to:     *       *  Enable/disable/start/stop all PIM vif interfaces.     */    virtual XrlCmdError pim_0_1_enable_all_vifs() = 0;    virtual XrlCmdError pim_0_1_disable_all_vifs() = 0;    virtual XrlCmdError pim_0_1_start_all_vifs() = 0;    virtual XrlCmdError pim_0_1_stop_all_vifs() = 0;    /**     *  Pure-virtual function that needs to be implemented to:     *       *  Enable/disable/start/stop PIM protocol and PIM CLI access.     */    virtual XrlCmdError pim_0_1_enable_pim() = 0;    virtual XrlCmdError pim_0_1_disable_pim() = 0;    virtual XrlCmdError pim_0_1_enable_cli() = 0;    virtual XrlCmdError pim_0_1_disable_cli() = 0;    virtual XrlCmdError pim_0_1_start_pim() = 0;    virtual XrlCmdError pim_0_1_stop_pim() = 0;    virtual XrlCmdError pim_0_1_start_cli() = 0;    virtual XrlCmdError pim_0_1_stop_cli() = 0;    /**     *  Pure-virtual function that needs to be implemented to:     *       *  Enable/disable/start/stop BSR.     */    virtual XrlCmdError pim_0_1_enable_bsr() = 0;    virtual XrlCmdError pim_0_1_disable_bsr() = 0;    virtual XrlCmdError pim_0_1_start_bsr() = 0;    virtual XrlCmdError pim_0_1_stop_bsr() = 0;    /**     *  Pure-virtual function that needs to be implemented to:     *       *  Add/delete scope zone.     *       *  @param scope_zone_id the ID of the configured zone.     *       *  @param vif_name the name of the vif to use as a bondary of the scope     *  zone.     */    virtual XrlCmdError pim_0_1_add_config_scope_zone_by_vif_name4(	// Input values, 	const IPv4Net&	scope_zone_id, 	const string&	vif_name) = 0;    virtual XrlCmdError pim_0_1_add_config_scope_zone_by_vif_name6(	// Input values, 	const IPv6Net&	scope_zone_id, 	const string&	vif_name) = 0;    virtual XrlCmdError pim_0_1_add_config_scope_zone_by_vif_addr4(	// Input values, 	const IPv4Net&	scope_zone_id, 	const IPv4&	vif_addr) = 0;    virtual XrlCmdError pim_0_1_add_config_scope_zone_by_vif_addr6(	// Input values, 	const IPv6Net&	scope_zone_id, 	const IPv6&	vif_addr) = 0;    virtual XrlCmdError pim_0_1_delete_config_scope_zone_by_vif_name4(	// Input values, 	const IPv4Net&	scope_zone_id, 	const string&	vif_name) = 0;    virtual XrlCmdError pim_0_1_delete_config_scope_zone_by_vif_name6(	// Input values, 	const IPv6Net&	scope_zone_id, 	const string&	vif_name) = 0;    virtual XrlCmdError pim_0_1_delete_config_scope_zone_by_vif_addr4(	// Input values, 	const IPv4Net&	scope_zone_id, 	const IPv4&	vif_addr) = 0;    virtual XrlCmdError pim_0_1_delete_config_scope_zone_by_vif_addr6(	// Input values, 	const IPv6Net&	scope_zone_id, 	const IPv6&	vif_addr) = 0;    /**     *  Pure-virtual function that needs to be implemented to:     *       *  Add/delete candidate-BSR configuration.     *       *  @param scope_zone_id the ID of the configured zone.     *       *  @param is_scope_zone true if configuring administratively scoped zone.     *       *  @param vif_name the name of the vif to use its address as a     *  candidate-BSR.     *       *  @param bsr_priority the BSR priority (larger is better).     *       *  @param hash_mask_len the hash mask length.     */    virtual XrlCmdError pim_0_1_add_config_cand_bsr_by_vif_name4(	// Input values, 	const IPv4Net&	scope_zone_id, 	const bool&	is_scope_zone, 	const string&	vif_name, 	const uint32_t&	bsr_priority, 	const uint32_t&	hash_mask_len) = 0;    virtual XrlCmdError pim_0_1_add_config_cand_bsr_by_vif_name6(	// Input values, 	const IPv6Net&	scope_zone_id, 	const bool&	is_scope_zone, 	const string&	vif_name, 	const uint32_t&	bsr_priority, 	const uint32_t&	hash_mask_len) = 0;    virtual XrlCmdError pim_0_1_add_config_cand_bsr_by_addr4(	// Input values, 	const IPv4Net&	scope_zone_id, 	const bool&	is_scope_zone, 	const IPv4&	cand_bsr_addr, 	const uint32_t&	bsr_priority, 	const uint32_t&	hash_mask_len) = 0;    virtual XrlCmdError pim_0_1_add_config_cand_bsr_by_addr6(	// Input values, 	const IPv6Net&	scope_zone_id, 	const bool&	is_scope_zone, 	const IPv6&	cand_bsr_addr, 	const uint32_t&	bsr_priority, 	const uint32_t&	hash_mask_len) = 0;    virtual XrlCmdError pim_0_1_delete_config_cand_bsr4(	// Input values, 	const IPv4Net&	scope_zone_id, 	const bool&	is_scope_zone) = 0;    virtual XrlCmdError pim_0_1_delete_config_cand_bsr6(	// Input values, 	const IPv6Net&	scope_zone_id, 	const bool&	is_scope_zone) = 0;    /**     *  Pure-virtual function that needs to be implemented to:     *       *  Add/delete Candidate-RP configuration.     *       *  @param group_prefix the group prefix of the configured zone.     *       *  @param is_scope_zone true if configuring administratively scoped zone.     *       *  @param vif_name the name of the vif to use its address as a     *  candidate-RP.     *       *  @param rp_priority the Cand-RP priority (smaller is better).     *       *  @param rp_holdtime the Cand-RP holdtime (in seconds).     */    virtual XrlCmdError pim_0_1_add_config_cand_rp_by_vif_name4(	// Input values, 	const IPv4Net&	group_prefix, 	const bool&	is_scope_zone, 	const string&	vif_name, 	const uint32_t&	rp_priority, 	const uint32_t&	rp_holdtime) = 0;    virtual XrlCmdError pim_0_1_add_config_cand_rp_by_vif_name6(	// Input values, 	const IPv6Net&	group_prefix, 	const bool&	is_scope_zone, 	const string&	vif_name, 	const uint32_t&	rp_priority, 	const uint32_t&	rp_holdtime) = 0;    virtual XrlCmdError pim_0_1_add_config_cand_rp_by_addr4(	// Input values, 	const IPv4Net&	group_prefix, 	const bool&	is_scope_zone, 	const IPv4&	cand_rp_addr, 	const uint32_t&	rp_priority, 	const uint32_t&	rp_holdtime) = 0;    virtual XrlCmdError pim_0_1_add_config_cand_rp_by_addr6(	// Input values, 	const IPv6Net&	group_prefix, 	const bool&	is_scope_zone, 	const IPv6&	cand_rp_addr, 	const uint32_t&	rp_priority, 	const uint32_t&	rp_holdtime) = 0;    virtual XrlCmdError pim_0_1_delete_config_cand_rp_by_vif_name4(	// Input values, 	const IPv4Net&	group_prefix, 	const bool&	is_scope_zone, 	const string&	vif_name) = 0;    virtual XrlCmdError pim_0_1_delete_config_cand_rp_by_vif_name6(	// Input values, 	const IPv6Net&	group_prefix, 	const bool&	is_scope_zone, 	const string&	vif_name) = 0;    virtual XrlCmdError pim_0_1_delete_config_cand_rp_by_addr4(	// Input values, 	const IPv4Net&	group_prefix, 	const bool&	is_scope_zone, 	const IPv4&	cand_rp_addr) = 0;    virtual XrlCmdError pim_0_1_delete_config_cand_rp_by_addr6(	// Input values, 	const IPv6Net&	group_prefix, 	const bool&	is_scope_zone, 	const IPv6&	cand_rp_addr) = 0;    /**     *  Pure-virtual function that needs to be implemented to:     *       *  Add/delete/complete static RP configuration.     *       *  @param group_prefix the group prefix for the RP.     *       *  @param rp_addr the RP address.     *       *  @param rp_priority the RP priority (smaller is better).     *       *  @param hash_mask_len the hash mask length used in computing an RP for a     *  group. It should be same across all RPs. If set to zero, the default     *  one will be used.     */    virtual XrlCmdError pim_0_1_add_config_static_rp4(	// Input values, 	const IPv4Net&	group_prefix, 	const IPv4&	rp_addr, 	const uint32_t&	rp_priority, 	const uint32_t&	hash_mask_len) = 0;    virtual XrlCmdError pim_0_1_add_config_static_rp6(	// Input values, 	const IPv6Net&	group_prefix, 	const IPv6&	rp_addr, 	const uint32_t&	rp_priority, 	const uint32_t&	hash_mask_len) = 0;    virtual XrlCmdError pim_0_1_delete_config_static_rp4(	// Input values, 	const IPv4Net&	group_prefix, 	const IPv4&	rp_addr) = 0;    virtual XrlCmdError pim_0_1_delete_config_static_rp6(	// Input values, 	const IPv6Net&	group_prefix, 	const IPv6&	rp_addr) = 0;    virtual XrlCmdError pim_0_1_config_static_rp_done() = 0;    /**     *  Pure-virtual function that needs to be implemented to:     *       *  Configure PIM Hello-related metrics. The 'set_foo' XRLs set the     *  particular values. The 'reset_foo' XRLs reset the metrics to their     *  default values.     *       *  @param vif_name the name of the vif to configure.     *       *  @param proto_version the protocol version.     */    virtual XrlCmdError pim_0_1_get_vif_proto_version(	// Input values, 	const string&	vif_name, 	// Output values, 	uint32_t&	proto_version) = 0;    virtual XrlCmdError pim_0_1_set_vif_proto_version(	// Input values, 	const string&	vif_name, 	const uint32_t&	proto_version) = 0;    virtual XrlCmdError pim_0_1_reset_vif_proto_version(	// Input values, 	const string&	vif_name) = 0;    virtual XrlCmdError pim_0_1_get_vif_hello_triggered_delay(	// Input values, 	const string&	vif_name, 	// Output values, 	uint32_t&	hello_triggered_delay) = 0;    virtual XrlCmdError pim_0_1_set_vif_hello_triggered_delay(	// Input values, 	const string&	vif_name, 	const uint32_t&	hello_triggered_delay) = 0;    virtual XrlCmdError pim_0_1_reset_vif_hello_triggered_delay(	// Input values, 	const string&	vif_name) = 0;    virtual XrlCmdError pim_0_1_get_vif_hello_period(	// Input values, 	const string&	vif_name, 	// Output values, 	uint32_t&	hello_period) = 0;    virtual XrlCmdError pim_0_1_set_vif_hello_period(	// Input values, 	const string&	vif_name, 	const uint32_t&	hello_period) = 0;    virtual XrlCmdError pim_0_1_reset_vif_hello_period(	// Input values, 	const string&	vif_name) = 0;    virtual XrlCmdError pim_0_1_get_vif_hello_holdtime(	// Input values, 	const string&	vif_name, 	// Output values, 	uint32_t&	hello_holdtime) = 0;    virtual XrlCmdError pim_0_1_set_vif_hello_holdtime(	// Input values, 	const string&	vif_name, 	const uint32_t&	hello_holdtime) = 0;    virtual XrlCmdError pim_0_1_reset_vif_hello_holdtime(	// Input values, 	const string&	vif_name) = 0;    virtual XrlCmdError pim_0_1_get_vif_dr_priority(	// Input values, 	const string&	vif_name, 	// Output values, 	uint32_t&	dr_priority) = 0;    virtual XrlCmdError pim_0_1_set_vif_dr_priority(	// Input values, 	const string&	vif_name, 	const uint32_t&	dr_priority) = 0;    virtual XrlCmdError pim_0_1_reset_vif_dr_priority(	// Input values, 	const string&	vif_name) = 0;    virtual XrlCmdError pim_0_1_get_vif_lan_delay(	// Input values, 	const string&	vif_name, 	// Output values, 	uint32_t&	lan_delay) = 0;    virtual XrlCmdError pim_0_1_set_vif_lan_delay(	// Input values, 	const string&	vif_name, 	const uint32_t&	lan_delay) = 0;    virtual XrlCmdError pim_0_1_reset_vif_lan_delay(	// Input values, 	const string&	vif_name) = 0;    virtual XrlCmdError pim_0_1_get_vif_override_interval(	// Input values, 	const string&	vif_name, 	// Output values, 	uint32_t&	override_interval) = 0;    virtual XrlCmdError pim_0_1_set_vif_override_interval(	// Input values, 	const string&	vif_name, 	const uint32_t&	override_interval) = 0;    virtual XrlCmdError pim_0_1_reset_vif_override_interval(	// Input values, 	const string&	vif_name) = 0;    virtual XrlCmdError pim_0_1_get_vif_is_tracking_support_disabled(	// Input values, 	const string&	vif_name, 	// Output values, 	bool&	is_tracking_support_disabled) = 0;    virtual XrlCmdError pim_0_1_set_vif_is_tracking_support_disabled(	// Input values, 	const string&	vif_name, 	const bool&	is_tracking_support_disabled) = 0;    virtual XrlCmdError pim_0_1_reset_vif_is_tracking_support_disabled(	// Input values, 	const string&	vif_name) = 0;    virtual XrlCmdError pim_0_1_get_vif_accept_nohello_neighbors(	// Input values, 	const string&	vif_name, 	// Output values, 	bool&	accept_nohello_neighbors) = 0;    virtual XrlCmdError pim_0_1_set_vif_accept_nohello_neighbors(	// Input values, 	const string&	vif_name, 	const bool&	accept_nohello_neighbors) = 0;    virtual XrlCmdError pim_0_1_reset_vif_accept_nohello_neighbors(	// Input values, 	const string&	vif_name) = 0;

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?