Fri Jun 19 12:10:58 2009

Asterisk developer's documentation


ast_context Struct Reference

ast_context: An extension context More...


Data Fields

struct {
   ast_sw *   first
   ast_sw *   last
alts
ast_ignorepatignorepats
ast_includeincludes
ast_rwlock_t lock
ast_mutex_t macrolock
char name [0]
ast_contextnext
match_charpattern_tree
int refcount
char * registrar
ast_extenroot
ast_hashtabroot_table


Detailed Description

ast_context: An extension context

Definition at line 208 of file pbx.c.


Field Documentation

struct { ... } alts

Alternative switches

Referenced by __ast_internal_context_destroy(), ast_context_add_switch2(), ast_context_remove_switch2(), ast_walk_context_switches(), and pbx_find_extension().

struct ast_sw* first

Definition at line 218 of file pbx.c.

struct ast_ignorepat* ignorepats

Patterns for which to continue playing dialtone

Definition at line 215 of file pbx.c.

Referenced by __ast_internal_context_destroy(), ast_context_add_ignorepat2(), ast_context_find_or_create(), ast_context_remove_ignorepat2(), ast_ignore_pattern(), and ast_walk_context_ignorepats().

struct ast_include* includes

Include other contexts

Definition at line 214 of file pbx.c.

Referenced by __ast_internal_context_destroy(), ast_context_add_include2(), ast_context_find_or_create(), ast_context_remove_include2(), ast_walk_context_includes(), and pbx_find_extension().

struct ast_sw* last

Definition at line 218 of file pbx.c.

ast_rwlock_t lock

A lock to prevent multiple threads from clobbering the context

Definition at line 209 of file pbx.c.

Referenced by __ast_internal_context_destroy(), ast_context_find_or_create(), ast_rdlock_context(), ast_unlock_context(), and ast_wrlock_context().

ast_mutex_t macrolock

A lock to implement "exclusive" macros - held whilst a call is executing in the macro

Definition at line 219 of file pbx.c.

Referenced by ast_context_find_or_create(), ast_context_lockmacro(), and ast_context_unlockmacro().

char name[0]

Name of the context

Definition at line 220 of file pbx.c.

Referenced by __ast_context_destroy(), ast_add_extension2_lockopt(), ast_context_find(), ast_context_find_or_create(), ast_extension_state_add(), ast_get_context_name(), ast_hashtab_compare_contexts(), ast_hashtab_hash_contexts(), ast_merge_contexts_and_delete(), ast_remove_hint(), create_match_char_tree(), handle_statechange(), pbx_find_extension(), and show_debug_helper().

struct ast_context* next

Link them together

Definition at line 213 of file pbx.c.

Referenced by __ast_context_destroy(), ast_context_find_or_create(), ast_merge_contexts_and_delete(), and ast_walk_contexts().

struct match_char* pattern_tree

A tree to speed up extension pattern matching

Definition at line 212 of file pbx.c.

Referenced by __ast_internal_context_destroy(), add_exten_to_pattern_tree(), add_pattern_node(), ast_add_extension2_lockopt(), pbx_find_extension(), and show_debug_helper().

int refcount

each module that would have created this context should inc/dec this as appropriate

Definition at line 217 of file pbx.c.

Referenced by ast_context_find_or_create().

char* registrar

Registrar -- make sure you malloc this, as the registrar may have to survive module unloads

Definition at line 216 of file pbx.c.

Referenced by __ast_context_destroy(), __ast_internal_context_destroy(), ast_context_find_or_create(), ast_get_context_registrar(), and ast_merge_contexts_and_delete().

struct ast_exten* root

The root of the list of extensions

Definition at line 210 of file pbx.c.

Referenced by __ast_internal_context_destroy(), ast_add_extension2_lockopt(), ast_context_find_or_create(), and ast_walk_context_extensions().

struct ast_hashtab* root_table

For exact matches on the extensions in the pattern tree, and for traversals of the pattern_tree

Definition at line 211 of file pbx.c.

Referenced by __ast_context_destroy(), __ast_internal_context_destroy(), ast_add_extension2_lockopt(), ast_context_find_or_create(), create_match_char_tree(), and pbx_find_extension().


The documentation for this struct was generated from the following file:
Generated on Fri Jun 19 12:10:58 2009 for Asterisk - the Open Source PBX by  doxygen 1.4.7