Main Page | Modules | Namespace List | Data Structures | File List | Data Fields | Globals | Related Pages

apr_queue.h

Go to the documentation of this file.
00001 /* Copyright 2000-2004 The Apache Software Foundation
00002  *
00003  * Licensed under the Apache License, Version 2.0 (the "License");
00004  * you may not use this file except in compliance with the License.
00005  * You may obtain a copy of the License at
00006  *
00007  *     http://www.apache.org/licenses/LICENSE-2.0
00008  *
00009  * Unless required by applicable law or agreed to in writing, software
00010  * distributed under the License is distributed on an "AS IS" BASIS,
00011  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00012  * See the License for the specific language governing permissions and
00013  * limitations under the License.
00014  */
00015 
00016 #ifndef APR_QUEUE_H
00017 #define APR_QUEUE_H
00018 
00019 #if APR_HAS_THREADS
00020 
00028 #include "apu.h"
00029 #include "apr_errno.h"
00030 #include "apr_pools.h"
00031 
00032 #ifdef __cplusplus
00033 extern "C" {
00034 #endif /* __cplusplus */
00035 
00045 typedef struct apr_queue_t apr_queue_t;
00046 
00053 APU_DECLARE(apr_status_t) apr_queue_create(apr_queue_t **queue, 
00054                                            unsigned int queue_capacity, 
00055                                            apr_pool_t *a);
00056 
00066 APU_DECLARE(apr_status_t) apr_queue_push(apr_queue_t *queue, void *data);
00067 
00077 APU_DECLARE(apr_status_t) apr_queue_pop(apr_queue_t *queue, void **data);
00078 
00089 APU_DECLARE(apr_status_t) apr_queue_trypush(apr_queue_t *queue, void *data);
00090 
00101 APU_DECLARE(apr_status_t) apr_queue_trypop(apr_queue_t *queue, void **data);
00102 
00111 APU_DECLARE(unsigned int) apr_queue_size(apr_queue_t *queue);
00112 
00118 APU_DECLARE(apr_status_t) apr_queue_interrupt_all(apr_queue_t *queue);
00119 
00126 APU_DECLARE(apr_status_t) apr_queue_term(apr_queue_t *queue);
00127 
00128 #ifdef __cplusplus
00129 }
00130 #endif
00131 
00134 #endif /* APR_HAS_THREADS */
00135 
00136 #endif /* APRQUEUE_H */

Generated on Sun Mar 20 20:00:15 2005 for Apache Portable Runtime Utility Library by  doxygen 1.3.9.1