pbx: Create pbx_include.c for management of 'struct ast_include'.
[asterisk/asterisk.git] / include / asterisk / pbx.h
index afdcc8d..378bb55 100644 (file)
@@ -1227,7 +1227,7 @@ int pbx_checkcondition(const char *condition);
 const char *ast_get_context_name(struct ast_context *con);
 const char *ast_get_extension_name(struct ast_exten *exten);
 struct ast_context *ast_get_extension_context(struct ast_exten *exten);
-const char *ast_get_include_name(struct ast_include *include);
+const char *ast_get_include_name(const struct ast_include *include);
 const char *ast_get_ignorepat_name(struct ast_ignorepat *ip);
 const char *ast_get_switch_name(struct ast_sw *sw);
 const char *ast_get_switch_data(struct ast_sw *sw);
@@ -1249,7 +1249,7 @@ void *ast_get_extension_app_data(struct ast_exten *e);
 /*! @{ */
 const char *ast_get_context_registrar(struct ast_context *c);
 const char *ast_get_extension_registrar(struct ast_exten *e);
-const char *ast_get_include_registrar(struct ast_include *i);
+const char *ast_get_include_registrar(const struct ast_include *i);
 const char *ast_get_ignorepat_registrar(struct ast_ignorepat *ip);
 const char *ast_get_switch_registrar(struct ast_sw *sw);
 /*! @} */
@@ -1261,13 +1261,19 @@ struct ast_exten *ast_walk_context_extensions(struct ast_context *con,
        struct ast_exten *priority);
 struct ast_exten *ast_walk_extension_priorities(struct ast_exten *exten,
        struct ast_exten *priority);
-struct ast_include *ast_walk_context_includes(struct ast_context *con,
-       struct ast_include *inc);
+const struct ast_include *ast_walk_context_includes(const struct ast_context *con,
+       const struct ast_include *inc);
 struct ast_ignorepat *ast_walk_context_ignorepats(struct ast_context *con,
        struct ast_ignorepat *ip);
 struct ast_sw *ast_walk_context_switches(struct ast_context *con, struct ast_sw *sw);
 /*! @} */
 
+/*! @name Iterator functions ... */
+/*! @{ */
+int ast_context_includes_count(const struct ast_context *con);
+const struct ast_include *ast_context_includes_get(const struct ast_context *con, int idx);
+/*! @} */
+
 /*!
  * \brief Create a human-readable string, specifying all variables and their corresponding values.
  * \param chan Channel from which to read variables