-/*
- * mlt_pool.c -- memory pooling functionality
- * Copyright (C) 2003-2004 Ushodaya Enterprises Limited
- * Author: Charles Yates <charles.yates@pandora.be>
+/**
+ * \file mlt_pool.c
+ * \brief memory pooling functionality
+ *
+ * Copyright (C) 2003-2008 Ushodaya Enterprises Limited
+ * \author Charles Yates <charles.yates@pandora.be>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
static mlt_properties pools = NULL;
-/** Private pooling structure.
-*/
+/** \brief Pool (memory) class
+ */
typedef struct mlt_pool_s
{
}
*mlt_pool;
+/** \brief private to mlt_pool_s, for tracking items to release
+ */
+
typedef struct mlt_release_s
{
mlt_pool pool;
#ifdef _MLT_POOL_CHECKS_
// Stats dump on close
int i = 0;
- fprintf( stderr, "Usage:\n\n" );
for ( i = 0; i < mlt_properties_count( pools ); i ++ )
{
mlt_pool pool = mlt_properties_get_data_at( pools, i, NULL );
if ( pool->count )
- fprintf( stderr, "%d: allocated %d returned %d %c\n", pool->size, pool->count, mlt_deque_count( pool->stack ),
- pool->count != mlt_deque_count( pool->stack ) ? '*' : ' ' );
+ mlt_log( NULL, MLT_LOG_DEBUG, "%s: size %d allocated %d returned %d %c\n", __FUNCTION__,
+ pool->size, pool->count, mlt_deque_count( pool->stack ),
+ pool->count != mlt_deque_count( pool->stack ) ? '*' : ' ' );
}
#endif