pjsip logo pjsip.org
Open source SIP stack and media stack for presence, im/instant messaging, and multimedia communication

HOME

SIP/media Features
High Performance SIP
Small Footprint SIP
Symbian Port

FAQ

Documentation

Licensing

Download

Development (Trac)

Projects using pjsip

Mailing List

Open Source Links


About: PJLIB, PJLIB-UTIL, PJSIP, and PJMEDIA are created by: Benny Prijono
<bennylp@pjsip.org>


 

Home --> Documentations --> PJSIP Reference

pjsip_uri_vptr Struct Reference
[Generic URI]

#include <sip_uri.h>


Detailed Description

URI 'virtual' function table. All types of URI in this library (such as sip:, sips:, tel:, and name-addr) will have pointer to this table as their first struct member. This table provides polimorphic behaviour to the URI.

Data Fields

const pj_str_t *(* p_get_scheme )(const void *uri)
void *(* p_get_uri )(void *uri)
pj_ssize_t(* p_print )(pjsip_uri_context_e context, const void *uri, char *buf, pj_size_t size)
pj_status_t(* p_compare )(pjsip_uri_context_e context, const void *uri1, const void *uri2)
void *(* p_clone )(pj_pool_t *pool, const void *uri)

Field Documentation

const pj_str_t*(* pjsip_uri_vptr::p_get_scheme)(const void *uri)

Get URI scheme.

Parameters:
uri the URI (self).
Returns:
the URI scheme.

void*(* pjsip_uri_vptr::p_get_uri)(void *uri)

Get the URI object contained by this URI, or the URI itself if it doesn't contain another URI.

Parameters:
uri the URI (self).

pj_ssize_t(* pjsip_uri_vptr::p_print)(pjsip_uri_context_e context, const void *uri, char *buf, pj_size_t size)

Print URI components to the buffer, following the rule of which components are allowed for the context.

Parameters:
context the context where the URI will be placed.
uri the URI (self).
buf the buffer.
size the size of the buffer.
Returns:
the length printed.

pj_status_t(* pjsip_uri_vptr::p_compare)(pjsip_uri_context_e context, const void *uri1, const void *uri2)

Compare two URIs according to the context.

Parameters:
context the context.
uri1 the first URI (self).
uri2 the second URI.
Returns:
PJ_SUCCESS if equal, or otherwise the error status which should point to the mismatch part.

void*(* pjsip_uri_vptr::p_clone)(pj_pool_t *pool, const void *uri)

Clone URI.

Parameters:
pool the pool.
the URI to clone (self).
Returns:
new URI.


The documentation for this struct was generated from the following file:

 


PJSIP Open Source, high performance, small footprint, and very very portable SIP stack
(C)2003-2008 Benny Prijono