X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=include%2Fvlc_messages.h;h=20163184aadc89841a71ac27e4472862a2ae1e56;hb=ed9144bac360c3c29d92fe8f6cb8195680fdeb52;hp=7ace8c8b3236fbbb1123ec5e7990fac49ff226f3;hpb=3f1e3abe351f19cb9bff01e8cdc8d36f736c97c9;p=vlc diff --git a/include/vlc_messages.h b/include/vlc_messages.h index 7ace8c8b32..20163184aa 100644 --- a/include/vlc_messages.h +++ b/include/vlc_messages.h @@ -24,6 +24,13 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA. *****************************************************************************/ +#if !defined( __LIBVLC__ ) + #error You are not libvlc or one of its plugins. You cannot include this file +#endif + +#ifndef _VLC_MESSAGES_H_ +#define _VLC_MESSAGES_H_ + #include int vlc_mutex_lock( vlc_mutex_t * ) ; @@ -37,9 +44,19 @@ int vlc_mutex_unlock( vlc_mutex_t * ) ; * @{ */ +/** Internal message stack context */ +typedef struct +{ + int i_code; + char * psz_message; +} msg_context_t; + +void msg_StackSet ( int, const char*, ... ); +void msg_StackAdd ( const char*, ... ); +const char* msg_StackMsg ( void ); /** - * Store a single message. + * Store a single message sent to user. */ typedef struct { @@ -65,16 +82,7 @@ typedef struct #define MSG_QUEUE_NORMAL 0 #define MSG_QUEUE_HTTPD_ACCESS 1 - -/** - * Store all data requiered by messages interfaces. - */ -struct msg_bank_t -{ - vlc_mutex_t lock; - int i_queues; - msg_queue_t **pp_queues; -}; +#define NB_QUEUES 2 struct msg_queue_t { @@ -99,6 +107,15 @@ struct msg_queue_t #endif }; +/** + * Store all data requiered by messages interfaces. + */ +struct msg_bank_t +{ + vlc_mutex_t lock; + msg_queue_t queues[NB_QUEUES]; +}; + /** * Used by interface plugins which subscribe to the message bank. */ @@ -196,6 +213,7 @@ void __msg_Destroy ( vlc_object_t * ); VLC_EXPORT( msg_subscription_t*, __msg_Subscribe, ( vlc_object_t *, int ) ); VLC_EXPORT( void, __msg_Unsubscribe, ( vlc_object_t *, msg_subscription_t * ) ); +VLC_EXPORT(const char *, msg_GetObjectTypeName, (int i_object_type )); /** * @} @@ -259,7 +277,7 @@ enum STATS_DISPLAYED_PICTURES, STATS_LOST_PICTURES, - STATS_TIMER_PLAYLIST_WALK, + STATS_TIMER_PLAYLIST_BUILD, STATS_TIMER_ML_LOAD, STATS_TIMER_ML_DUMP, STATS_TIMER_INTERACTION, @@ -408,3 +426,5 @@ VLC_EXPORT( void,__stats_TimerDump, (vlc_object_t*, unsigned int) ); VLC_EXPORT( void,__stats_TimersDumpAll, (vlc_object_t*) ); #define stats_TimersClean(a) __stats_TimersClean( VLC_OBJECT(a) ) VLC_EXPORT( void, __stats_TimersClean, (vlc_object_t * ) ); + +#endif