to compat.h so it is always available - hopefully this will let
us reduce the number of inclusions of channel.h and frame.h
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89426
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
int ast_device_state_engine_init(void); /*!< Provided by devicestate.c */
int astobj2_init(void); /*! Provided by astobj2.c */
-/* Many headers need 'ast_channel' to be defined */
-struct ast_channel;
-
-/* Many headers need 'ast_module' to be defined */
-struct ast_module;
-
/*!
* \brief Reload asterisk modules.
* \param name the name of the module to reload
extern "C" {
#endif
-struct ast_channel;
struct ast_frame;
/* Configuration flags */
typedef unsigned long long uint64_t;
#endif
+/*! \brief
+ * Definition of various structures that many asterisk files need,
+ * but only because they need to know that the type exists.
+ *
+ * We can move them to a different global header if necessary.
+ */
+struct ast_channel;
+struct ast_frame;
+struct ast_module;
+
#endif
#define ast_channel_trylock(x) ast_mutex_trylock(&x->lock_dont_use)
#else
-struct ast_channel;
-
/*! \brief Lock AST channel (and print debugging output)
\note You need to enable DEBUG_CHANNEL_LOCKS for this function */
int ast_channel_lock(struct ast_channel *chan);
#define ast_channel_trylock(x) ast_mutex_trylock(&x->lock)
#else
-struct ast_channel;
-
/*! \brief Lock AST channel (and print debugging output)
\note You need to enable DEBUG_CHANNEL_LOCKS for this function */
int ast_channel_lock(struct ast_channel *chan);