| gsttrace.h | gsttrace.h | |||
|---|---|---|---|---|
| skipping to change at line 90 | skipping to change at line 90 | |||
| gint bufoffset; | gint bufoffset; | |||
| }; | }; | |||
| struct _GstTraceEntry { | struct _GstTraceEntry { | |||
| gint64 timestamp; | gint64 timestamp; | |||
| guint32 sequence; | guint32 sequence; | |||
| guint32 data; | guint32 data; | |||
| gchar message[112]; | gchar message[112]; | |||
| }; | }; | |||
| GstTrace* gst_trace_new (gchar *filename, gint size) ; | GstTrace* gst_trace_new (const gchar *filename, gint size); | |||
| void gst_trace_destroy (GstTrace *trace); | void gst_trace_destroy (GstTrace *trace); | |||
| void gst_trace_flush (GstTrace *trace); | void gst_trace_flush (GstTrace *trace); | |||
| void gst_trace_text_flush (GstTrace *trace); | void gst_trace_text_flush (GstTrace *trace); | |||
| /** | /** | |||
| * gst_trace_get_size: | * gst_trace_get_size: | |||
| * @trace: a #GstTrace | * @trace: a #GstTrace | |||
| * | * | |||
| * Retrieve the buffer size of @trace. | * Retrieve the buffer size of @trace. | |||
| */ | */ | |||
| skipping to change at line 123 | skipping to change at line 123 | |||
| * Retrieve the remaining size in the @trace buffer. | * Retrieve the remaining size in the @trace buffer. | |||
| */ | */ | |||
| #define gst_trace_get_remaining(trace) ((trace)->bufsize - (trace)- >bufoffset) | #define gst_trace_get_remaining(trace) ((trace)->bufsize - (trace)- >bufoffset) | |||
| void gst_trace_set_default (GstTrace *trace); | void gst_trace_set_default (GstTrace *trace); | |||
| void _gst_trace_add_entry (GstTrace *trace, guint32 se q, | void _gst_trace_add_entry (GstTrace *trace, guint32 se q, | |||
| guint32 data, gchar *msg); | guint32 data, gchar *msg); | |||
| void gst_trace_read_tsc (gint64 *dst); | void gst_trace_read_tsc (gint64 *dst); | |||
| extern GStaticMutex _gst_trace_mutex; | ||||
| gboolean gst_alloc_trace_available (void); | gboolean gst_alloc_trace_available (void); | |||
| G_CONST_RETURN GList* gst_alloc_trace_list (void); | G_CONST_RETURN GList* gst_alloc_trace_list (void); | |||
| GstAllocTrace* _gst_alloc_trace_register (const gchar *name); | GstAllocTrace* _gst_alloc_trace_register (const gchar *name); | |||
| int gst_alloc_trace_live_all (void); | int gst_alloc_trace_live_all (void); | |||
| void gst_alloc_trace_print_all (void); | void gst_alloc_trace_print_all (void); | |||
| void gst_alloc_trace_print_live (void); | void gst_alloc_trace_print_live (void); | |||
| void gst_alloc_trace_set_flags_all (GstAllocTraceFlags flags); | void gst_alloc_trace_set_flags_all (GstAllocTraceFlags flags); | |||
| GstAllocTrace* gst_alloc_trace_get (const gchar *name); | GstAllocTrace* gst_alloc_trace_get (const gchar *name); | |||
| skipping to change at line 154 | skipping to change at line 156 | |||
| /** | /** | |||
| * gst_alloc_trace_new: | * gst_alloc_trace_new: | |||
| * @trace: The tracer to use | * @trace: The tracer to use | |||
| * @mem: The memory allocated | * @mem: The memory allocated | |||
| * | * | |||
| * Use the tracer to trace a new memory allocation | * Use the tracer to trace a new memory allocation | |||
| */ | */ | |||
| #define gst_alloc_trace_new(trace, mem) \ | #define gst_alloc_trace_new(trace, mem) \ | |||
| G_STMT_START { \ | G_STMT_START { \ | |||
| if ((trace)->flags & GST_ALLOC_TRACE_LIVE) \ | if (G_UNLIKELY ((trace)->flags)) { \ | |||
| (trace)->live++; \ | g_static_mutex_lock (&_gst_trace_mutex); \ | |||
| if ((trace)->flags & GST_ALLOC_TRACE_MEM_LIVE) \ | if ((trace)->flags & GST_ALLOC_TRACE_LIVE) \ | |||
| (trace)->mem_live = \ | (trace)->live++; \ | |||
| g_slist_prepend ((trace)->mem_live, mem); \ | if ((trace)->flags & GST_ALLOC_TRACE_MEM_LIVE) \ | |||
| (trace)->mem_live = \ | ||||
| g_slist_prepend ((trace)->mem_live, mem); \ | ||||
| g_static_mutex_unlock (&_gst_trace_mutex); \ | ||||
| } \ | ||||
| } G_STMT_END | } G_STMT_END | |||
| /** | /** | |||
| * gst_alloc_trace_free: | * gst_alloc_trace_free: | |||
| * @trace: The tracer to use | * @trace: The tracer to use | |||
| * @mem: The memory that is freed | * @mem: The memory that is freed | |||
| * | * | |||
| * Trace a memory free operation | * Trace a memory free operation | |||
| */ | */ | |||
| #define gst_alloc_trace_free(trace, mem) \ | #define gst_alloc_trace_free(trace, mem) \ | |||
| G_STMT_START { \ | G_STMT_START { \ | |||
| if ((trace)->flags & GST_ALLOC_TRACE_LIVE) \ | if (G_UNLIKELY ((trace)->flags)) { \ | |||
| (trace)->live--; \ | g_static_mutex_lock (&_gst_trace_mutex); \ | |||
| if ((trace)->flags & GST_ALLOC_TRACE_MEM_LIVE) \ | if ((trace)->flags & GST_ALLOC_TRACE_LIVE) \ | |||
| (trace)->mem_live = \ | (trace)->live--; \ | |||
| g_slist_remove ((trace)->mem_live, mem); \ | if ((trace)->flags & GST_ALLOC_TRACE_MEM_LIVE) \ | |||
| (trace)->mem_live = \ | ||||
| g_slist_remove ((trace)->mem_live, mem); \ | ||||
| g_static_mutex_unlock (&_gst_trace_mutex); \ | ||||
| } \ | ||||
| } G_STMT_END | } G_STMT_END | |||
| #else | #else | |||
| #define gst_alloc_trace_register(name) (NULL) | #define gst_alloc_trace_register(name) (NULL) | |||
| #define gst_alloc_trace_new(trace, mem) | #define gst_alloc_trace_new(trace, mem) | |||
| #define gst_alloc_trace_free(trace, mem) | #define gst_alloc_trace_free(trace, mem) | |||
| #endif | #endif | |||
| extern gint _gst_trace_on; | extern gint _gst_trace_on; | |||
| /** | /** | |||
| skipping to change at line 201 | skipping to change at line 211 | |||
| * Add an entry to @trace with sequence number @seq, @data and @msg. | * Add an entry to @trace with sequence number @seq, @data and @msg. | |||
| * If @trace is NULL, the entry will be added to the default #GstTrace. | * If @trace is NULL, the entry will be added to the default #GstTrace. | |||
| */ | */ | |||
| #define gst_trace_add_entry(trace,seq,data,msg) \ | #define gst_trace_add_entry(trace,seq,data,msg) \ | |||
| if (_gst_trace_on) { \ | if (_gst_trace_on) { \ | |||
| _gst_trace_add_entry(trace,(guint32)seq,(guint32)data,msg); \ | _gst_trace_add_entry(trace,(guint32)seq,(guint32)data,msg); \ | |||
| } | } | |||
| #else /* GST_DISABLE_TRACE */ | #else /* GST_DISABLE_TRACE */ | |||
| #if defined _GNUC_ && _GNUC_ >= 3 | #if defined __GNUC__ && __GNUC__ >= 3 | |||
| #pragma GCC poison gst_trace_new | #pragma GCC poison gst_trace_new | |||
| #pragma GCC poison gst_trace_destroy | #pragma GCC poison gst_trace_destroy | |||
| #pragma GCC poison gst_trace_flush | #pragma GCC poison gst_trace_flush | |||
| #pragma GCC poison gst_trace_text_flush | #pragma GCC poison gst_trace_text_flush | |||
| #pragma GCC poison gst_trace_get_size | #pragma GCC poison gst_trace_get_size | |||
| #pragma GCC poison gst_trace_get_offset | #pragma GCC poison gst_trace_get_offset | |||
| #pragma GCC poison gst_trace_get_remaining | #pragma GCC poison gst_trace_get_remaining | |||
| #pragma GCC poison gst_trace_set_default | #pragma GCC poison gst_trace_set_default | |||
| #pragma GCC poison _gst_trace_add_entry | #pragma GCC poison _gst_trace_add_entry | |||
| #pragma GCC poison gst_trace_read_tsc | #pragma GCC poison gst_trace_read_tsc | |||
| #pragma GCC poison gst_trace_add_entry | ||||
| #endif | #endif | |||
| #define gst_alloc_trace_register(name) (NULL) | #define gst_alloc_trace_register(name) (NULL) | |||
| #define gst_alloc_trace_new(trace, mem) | #define gst_alloc_trace_new(trace, mem) | |||
| #define gst_alloc_trace_free(trace, mem) | #define gst_alloc_trace_free(trace, mem) | |||
| #define gst_alloc_trace_available() (FALSE) | #define gst_alloc_trace_available() (FALSE) | |||
| #define gst_alloc_trace_list() (NULL) | #define gst_alloc_trace_list() (NULL) | |||
| #define _gst_alloc_trace_register(name) (NULL) | #define _gst_alloc_trace_register(name) (NULL) | |||
| End of changes. 6 change blocks. | ||||
| 13 lines changed or deleted | 22 lines changed or added | |||
This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ | ||||