move the declaration of struct ast_channel ast_frame and ast_module
authorLuigi Rizzo <rizzo@icir.org>
Mon, 19 Nov 2007 19:36:32 +0000 (19:36 +0000)
committerLuigi Rizzo <rizzo@icir.org>
Mon, 19 Nov 2007 19:36:32 +0000 (19:36 +0000)
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

include/asterisk.h
include/asterisk/abstract_jb.h
include/asterisk/compat.h
include/asterisk/lock.h
utils/extconf.c

index d4b2f03..da70e8a 100644 (file)
@@ -68,12 +68,6 @@ void ast_event_init(void);          /*!< Provided by event.c */
 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
index 1bd9dc8..4a41c8c 100644 (file)
@@ -36,7 +36,6 @@
 extern "C" {
 #endif
 
-struct ast_channel;
 struct ast_frame;
 
 /* Configuration flags */
index d918cd7..19ae6e9 100644 (file)
@@ -176,4 +176,14 @@ typedef unsigned int       u_int32_t;
 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
index 16ce5bb..055ec84 100644 (file)
@@ -1185,8 +1185,6 @@ AST_INLINE_API(int ast_atomic_dec_and_test(volatile int *p),
 #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);
index 0e40718..caed904 100644 (file)
@@ -1835,8 +1835,6 @@ AST_INLINE_API(int ast_atomic_dec_and_test(volatile int *p),
 #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);