UniMRCP  1.3.0
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
apt_consumer_task.h
Go to the documentation of this file.
1 /*
2  * Copyright 2008-2014 Arsen Chaloyan
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  *
16  * $Id: apt_consumer_task.h 2175 2014-09-12 04:56:09Z achaloyan@gmail.com $
17  */
18 
19 #ifndef APT_CONSUMER_TASK_H
20 #define APT_CONSUMER_TASK_H
21 
22 /**
23  * @file apt_consumer_task.h
24  * @brief Consumer Task Definition
25  */
26 
27 #include "apt_task.h"
28 #include "apt_timer_queue.h"
29 
31 
32 /** Opaque consumer task declaration */
34 
35 /**
36  * Create consumer task.
37  * @param obj the external object to associate with the task
38  * @param msg_pool the pool of task messages
39  * @param pool the pool to allocate memory from
40  */
42  void *obj,
43  apt_task_msg_pool_t *msg_pool,
44  apr_pool_t *pool);
45 
46 /**
47  * Get task base.
48  * @param task the consumer task to get base for
49  */
51 
52 /**
53  * Get task vtable.
54  * @param task the consumer task to get vtable for
55  */
57 
58 /**
59  * Get consumer task object.
60  * @param task the consumer task to get object from
61  */
63 
64 /**
65  * Create timer.
66  * @param task the consumer task to create timer for
67  * @param proc the timer callback
68  * @param obj the object to pass to callback
69  * @param pool the pool to allocate memory from
70  */
72  apt_consumer_task_t *task,
73  apt_timer_proc_f proc,
74  void *obj,
75  apr_pool_t *pool);
76 
78 
79 #endif /* APT_CONSUMER_TASK_H */