Changeset 2724 for pjproject/trunk/pjnath/include/pjnath/ice_session.h
- Timestamp:
- May 29, 2009 1:04:03 PM (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
pjproject/trunk/pjnath/include/pjnath/ice_session.h
r2642 r2724 177 177 { 178 178 /** 179 * The pointer to ICE check which was nominated for this component.180 * The value will be NULL if a nominated check has not been found181 * for this component.179 * Pointer to ICE check with highest priority which connectivity check 180 * has been successful. The value will be NULL if a no successful check 181 * has not been found for this component. 182 182 */ 183 183 pj_ice_sess_check *valid_check; 184 185 /** 186 * Pointer to ICE check with highest priority which connectivity check 187 * has been successful and it has been nominated. The value may be NULL 188 * if there is no such check yet. 189 */ 190 pj_ice_sess_check *nominated_check; 184 191 185 192 /** … … 554 561 555 562 /** 563 * This structure describes various ICE session options. Application 564 * configure the ICE session with these options by calling 565 * #pj_ice_sess_set_options(). 566 */ 567 typedef struct pj_ice_sess_options 568 { 569 /** 570 * Specify whether to use aggressive nomination. 571 */ 572 pj_bool_t aggressive; 573 574 /** 575 * For controlling agent if it uses regular nomination, specify the delay 576 * to perform nominated check (connectivity check with USE-CANDIDATE 577 * attribute) after all components have a valid pair. 578 * 579 * Default value is PJ_ICE_NOMINATED_CHECK_DELAY. 580 */ 581 unsigned nominated_check_delay; 582 583 /** 584 * For a controlled agent, specify how long it wants to wait (in 585 * milliseconds) for the controlling agent to complete sending 586 * connectivity check with nominated flag set to true for all components 587 * after the controlled agent has found that all connectivity checks in 588 * its checklist have been completed and there is at least one successful 589 * (but not nominated) check for every component. 590 * 591 * Default value for this option is 592 * ICE_CONTROLLED_AGENT_WAIT_NOMINATION_TIMEOUT. Specify -1 to disable 593 * this timer. 594 */ 595 int controlled_agent_want_nom_timeout; 596 597 } pj_ice_sess_options; 598 599 600 /** 556 601 * This structure describes the ICE session. For this version of PJNATH, 557 602 * an ICE session corresponds to a single media stream (unlike the ICE … … 570 615 pj_mutex_t *mutex; /**< Mutex. */ 571 616 pj_ice_sess_role role; /**< ICE role. */ 617 pj_ice_sess_options opt; /**< Options */ 572 618 pj_timestamp tie_breaker; /**< Tie breaker value */ 573 619 pj_uint8_t *prefs; /**< Type preference. */ 620 pj_bool_t is_nominating; /**< Nominating stage */ 574 621 pj_bool_t is_complete; /**< Complete? */ 575 622 pj_status_t ice_status; /**< Error status. */ 576 pj_timer_entry completion_timer; /**< To call callback.*/623 pj_timer_entry timer; /**< ICE timer. */ 577 624 pj_ice_sess_cb cb; /**< Callback. */ 578 625 … … 590 637 unsigned comp_cnt; /**< # of components. */ 591 638 pj_ice_sess_comp comp[PJ_ICE_MAX_COMP]; /**< Component array */ 639 unsigned comp_ka; /**< Next comp for KA */ 592 640 593 641 /* Local candidates */ … … 655 703 const pj_sockaddr *base_addr); 656 704 705 /** 706 * Initialize ICE session options with library default values. 707 * 708 * @param opt ICE session options. 709 */ 710 PJ_DECL(void) pj_ice_sess_options_default(pj_ice_sess_options *opt); 657 711 658 712 /** … … 690 744 691 745 /** 746 * Get the value of various options of the ICE session. 747 * 748 * @param ice The ICE session. 749 * @param opt The options to be initialized with the values 750 * from the ICE session. 751 * 752 * @return PJ_SUCCESS on success, or the appropriate error. 753 */ 754 PJ_DECL(pj_status_t) pj_ice_sess_get_options(pj_ice_sess *ice, 755 pj_ice_sess_options *opt); 756 757 /** 758 * Specify various options for this ICE session. Application MUST only 759 * call this function after the ICE session has been created but before 760 * any connectivity check is started. 761 * 762 * Application should call #pj_ice_sess_get_options() to initialize the 763 * options with their default values. 764 * 765 * @param ice The ICE session. 766 * @param opt Options to be applied to the ICE session. 767 * 768 * @return PJ_SUCCESS on success, or the appropriate error. 769 */ 770 PJ_DECL(pj_status_t) pj_ice_sess_set_options(pj_ice_sess *ice, 771 const pj_ice_sess_options *opt); 772 773 /** 692 774 * Destroy ICE session. This will cancel any connectivity checks currently 693 775 * running, if any, and any other events scheduled by this session, as well
Note: See TracChangeset
for help on using the changeset viewer.