Changeset 57 for pjproject/trunk/pjsip/include/pjsip/sip_transport.h
- Timestamp:
- Nov 19, 2005 1:20:08 PM (18 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
pjproject/trunk/pjsip/include/pjsip/sip_transport.h
r54 r57 117 117 *****************************************************************************/ 118 118 119 /** 120 * A customized ioqueue async operation key which is used by transport 121 * to locate rdata when a pending read operation completes. 122 */ 123 typedef struct pjsip_rx_data_op_key 124 { 125 pj_ioqueue_op_key_t op_key; 126 pjsip_rx_data *rdata; 127 } pjsip_rx_data_op_key; 128 129 119 130 /** 120 131 * Incoming message buffer. … … 140 151 141 152 /** Ioqueue key. */ 142 pj _ioqueue_op_key_top_key;153 pjsip_rx_data_op_key op_key; 143 154 144 155 } tp_info; … … 250 261 *****************************************************************************/ 251 262 263 /** Customized ioqueue async operation key, used by transport to keep 264 * callback parameters. 265 */ 266 typedef struct pjsip_tx_data_op_key 267 { 268 pj_ioqueue_op_key_t key; 269 pjsip_tx_data *tdata; 270 void *token; 271 void (*callback)(pjsip_transport*,void*,pj_ssize_t); 272 } pjsip_tx_data_op_key; 273 274 252 275 /** 253 276 * Data structure for sending outgoing message. Application normally creates … … 266 289 struct pjsip_tx_data 267 290 { 291 /** This is for transmission queue; it's managed by transports. */ 268 292 PJ_DECL_LIST_MEMBER(struct pjsip_tx_data); 269 293 … … 285 309 286 310 /** Ioqueue asynchronous operation key. */ 287 pj _ioqueue_op_key_top_key;311 pjsip_tx_data_op_key op_key; 288 312 289 313 /** Lock object. */ … … 304 328 pj_atomic_t *ref_cnt; 305 329 306 /** Being sent? */330 /** Being processed by transport? */ 307 331 int is_pending; 308 332 309 /** Transport internal. */333 /** Transport manager internal. */ 310 334 void *token; 311 335 void (*cb)(void*, pjsip_tx_data*, pj_status_t); … … 392 416 pj_sockaddr_in rem_addr; /**< Remote addr (zero for UDP) */ 393 417 418 pjsip_endpoint *endpt; /**< Endpoint instance. */ 394 419 pjsip_tpmgr *tpmgr; /**< Transport manager. */ 395 420 pj_timer_entry idle_timer; /**< Timer when ref cnt is zero.*/ … … 421 446 */ 422 447 pj_status_t (*send_msg)(pjsip_transport *transport, 423 const void *packet, 424 pj_size_t length, 425 pj_ioqueue_op_key_t *op_key, 448 pjsip_tx_data *tdata, 426 449 const pj_sockaddr_in *rem_addr, 427 450 void *token, 428 451 void (*callback)(pjsip_transport *transport, 429 452 void *token, 430 pj_s tatus_t status));453 pj_ssize_t sent_bytes)); 431 454 432 455 /** … … 509 532 pjsip_tpmgr *mgr, 510 533 pjsip_endpoint *endpt, 511 pj_ioqueue_t *ioqueue,512 534 const pj_sockaddr_in *rem_addr, 513 535 pjsip_transport **transport); … … 556 578 PJ_DECL(pj_status_t) pjsip_tpmgr_create( pj_pool_t *pool, 557 579 pjsip_endpoint * endpt, 558 pj_ioqueue_t *ioqueue,559 pj_timer_heap_t *timer_heap,560 580 void (*cb)(pjsip_endpoint*, 561 581 pj_status_t, … … 602 622 void (*cb)(void *token, 603 623 pjsip_tx_data *tdata, 604 pj_s tatus_t));624 pj_ssize_t bytes_sent)); 605 625 606 626
Note: See TracChangeset
for help on using the changeset viewer.