Lines Matching full:pool
38 * Declaration of the quick composite pool. The quick composite pool
39 * manages a pool of composite objects. A composite object is an object
59 /****h* Component Library/Quick Composite Pool
61 * Quick Composite Pool
64 * The Quick Composite Pool provides a self-contained and self-sustaining
65 * pool of user defined composite objects.
69 * initialization. Objects can be retrieved from the pool as long as there
72 * To aid in object oriented design, the Quick Composite Pool provides users
77 * A Quick Composite Pool does not return memory to the system as the user
78 * returns objects to the pool. The only method of returning memory to the
79 * system is to destroy the pool.
81 * The Quick Composite Pool operates on cl_pool_item_t structures that
83 * If using a cl_pool_item_t is not desired, the Composite Pool provides
86 * The Quick Composit Pool functions operate on a cl_qcpool_t structure
106 /****s* Component Library: Quick Composite Pool/cl_pool_item_t
118 /* Pointer to the owner pool used for sanity checks. */
125 * Used internally by the pool. Users should not use this field.
128 * Used internally by the pool in debug builds to check for consistency.
131 * The pool item structure is defined in such a way as to safely allow
132 * users to cast from a pool item to a list item for storing items
133 * retrieved from a quick pool in a quick list.
136 * Quick Composite Pool, cl_list_item_t
149 /* The pool item must be the first item to allow casting. */
156 * Used internally by the pool. Users should not use this field.
159 * Pointer to the user's object being stored in the pool.
162 * The pool object structure is used by non-quick pools to store object.
168 /****d* Component Library: Quick Composite Pool/cl_pfn_qcpool_init_t
175 * quick composite pool.
232 * Quick Composite Pool, cl_qcpool_init
235 /****d* Component Library: Quick Composite Pool/cl_pfn_qcpool_dtor_t
242 * quick composite pool.
267 * the memory for the composite object, as the quick composite pool manages
271 * Quick Composite Pool, cl_qcpool_init
274 /****s* Component Library: Quick Composite Pool/cl_qcpool_t
279 * Quick composite pool structure.
312 * Number of objects managed by the pool
315 * Number of objects to add when automatically growing the pool.
326 * User's provided context for callback functions, used by the pool
336 * State of the pool.
339 * Quick Composite Pool
342 /****f* Component Library: Quick Composite Pool/cl_qcpool_construct
347 * The cl_qcpool_construct function constructs a quick composite pool.
364 * quick composite pool function except cl_qcpool_init.
367 * Quick Composite Pool, cl_qcpool_init, cl_qcpool_destroy,
371 /****f* Component Library: Quick Composite Pool/cl_is_qcpool_inited
376 * The cl_is_qcpool_inited function returns whether a quick composite pool was
385 /* CL_ASSERT that the pool is not in some invalid state. */ in cl_is_qcpool_inited()
397 * TRUE if the quick composite pool was initialized successfully.
402 * Allows checking the state of a quick composite pool to determine if
406 * Quick Composite Pool
409 /****f* Component Library: Quick Composite Pool/cl_qcpool_init
414 * The cl_qcpool_init function initializes a quick composite pool for use.
434 * [in] Minimum number of objects that the pool should support. All
440 * [in] Maximum number of objects to which the pool is allowed to grow.
444 * [in] Number of objects to allocate when incrementally growing the pool.
456 * the pool. This parameter may be NULL only if the objects stored in
457 * the quick composite pool consist of only one component. If NULL, the
458 * pool assumes the cl_pool_item_t structure describing objects is
472 * CL_SUCCESS if the quick composite pool was initialized successfully.
475 * quick composite pool.
484 * If initialization fails, the pool is left in a destroyed state. Callers
488 * cl_qcpool_init initializes, and if necessary, grows the pool to
492 * Quick Composite Pool, cl_qcpool_construct, cl_qcpool_destroy,
497 /****f* Component Library: Quick Composite Pool/cl_qcpool_destroy
502 * The cl_qcpool_destroy function destroys a quick composite pool.
518 * operations on the composite pool should not be attempted after
525 * the pool.
528 * Quick Composite Pool, cl_qcpool_construct, cl_qcpool_init
531 /****f* Component Library: Quick Composite Pool/cl_qcpool_count
537 * in a quick composite pool.
557 * quick composite pool.
560 * Quick Composite Pool
563 /****f* Component Library: Quick Composite Pool/cl_qcpool_get
569 * quick composite pool.
583 * Returns NULL if the pool is empty and can not be grown automatically.
586 * cl_qcpool_get returns the object at the head of the pool. If the pool is
591 * Quick Composite Pool, cl_qcpool_get_tail, cl_qcpool_put,
595 /****f* Component Library: Quick Composite Pool/cl_qcpool_put
600 * The cl_qcpool_put function returns an object to a quick composite pool.
611 /* Make sure items being returned came from the specified pool. */ in cl_qcpool_put()
614 /* return this lil' doggy to the pool */ in cl_qcpool_put()
632 * cl_qcpool_put places the returned object at the head of the pool.
635 * retrieved from the pool by a previous call to cl_qcpool_get.
638 * Quick Composite Pool, cl_qcpool_put_tail, cl_qcpool_get
641 /****f* Component Library: Quick Composite Pool/cl_qcpool_put_list
647 * a quick composite pool.
663 /* Chech that all items in the list came from this pool. */ in cl_qcpool_put_list()
671 /* return these lil' doggies to the pool */ in cl_qcpool_put_list()
689 * cl_qcpool_put_list places the returned objects at the head of the pool.
692 * retrieved from the pool by a previous call to cl_qcpool_get.
695 * Quick Composite Pool, cl_qcpool_put, cl_qcpool_put_tail, cl_qcpool_get
698 /****f* Component Library: Quick Composite Pool/cl_qcpool_grow
703 * The cl_qcpool_grow function grows a quick composite pool by
715 * [in] Number of objects by which to grow the pool.
718 * CL_SUCCESS if the quick composite pool grew successfully.
721 * quick composite pool.
728 * It is not necessary to call cl_qcpool_grow if the pool is
732 * Quick Composite Pool