1 /*
2 * Copyright (C) 2025-2025 Huawei Device Co., Ltd.
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at
6 *
7 * http://www.apache.org/licenses/LICENSE-2.0
8 *
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
14 */
15 #ifndef MOCK_FFRT_API_C_QUEUE_H
16 #define MOCK_FFRT_API_C_QUEUE_H
17
18 #include <stdbool.h>
19 #include "type_def.h"
20
21 typedef enum {
22
23 ffrt_queue_serial,
24
25 ffrt_queue_concurrent,
26
27 ffrt_queue_max
28 } ffrt_queue_type_t;
29
30 typedef void *ffrt_queue_t;
ffrt_queue_attr_init(ffrt_queue_attr_t * attr)31 inline FFRT_C_API int ffrt_queue_attr_init(ffrt_queue_attr_t *attr)
32 {
33 return 0;
34 }
35
ffrt_queue_attr_destroy(ffrt_queue_attr_t * attr)36 inline FFRT_C_API void ffrt_queue_attr_destroy(ffrt_queue_attr_t *attr)
37 {}
38
ffrt_queue_attr_set_qos(ffrt_queue_attr_t * attr,ffrt_qos_t qos)39 inline FFRT_C_API void ffrt_queue_attr_set_qos(ffrt_queue_attr_t *attr, ffrt_qos_t qos)
40 {}
41
ffrt_queue_attr_get_qos(const ffrt_queue_attr_t * attr)42 inline FFRT_C_API ffrt_qos_t ffrt_queue_attr_get_qos(const ffrt_queue_attr_t *attr)
43 {
44 return {};
45 }
46
ffrt_queue_attr_set_timeout(ffrt_queue_attr_t * attr,uint64_t timeout_us)47 inline FFRT_C_API void ffrt_queue_attr_set_timeout(ffrt_queue_attr_t *attr, uint64_t timeout_us)
48 {}
49
ffrt_queue_attr_get_timeout(const ffrt_queue_attr_t * attr)50 inline FFRT_C_API uint64_t ffrt_queue_attr_get_timeout(const ffrt_queue_attr_t *attr)
51 {
52 return 0;
53 }
54
ffrt_queue_attr_set_callback(ffrt_queue_attr_t * attr,ffrt_function_header_t * f)55 inline FFRT_C_API void ffrt_queue_attr_set_callback(ffrt_queue_attr_t *attr, ffrt_function_header_t *f)
56 {}
57
ffrt_queue_attr_get_callback(const ffrt_queue_attr_t * attr)58 inline FFRT_C_API ffrt_function_header_t *ffrt_queue_attr_get_callback(const ffrt_queue_attr_t *attr)
59 {
60 return nullptr;
61 }
62
ffrt_queue_attr_set_max_concurrency(ffrt_queue_attr_t * attr,const int max_concurrency)63 inline FFRT_C_API void ffrt_queue_attr_set_max_concurrency(ffrt_queue_attr_t *attr, const int max_concurrency)
64 {}
65
ffrt_queue_attr_get_max_concurrency(const ffrt_queue_attr_t * attr)66 inline FFRT_C_API int ffrt_queue_attr_get_max_concurrency(const ffrt_queue_attr_t *attr)
67 {
68 return 0;
69 }
70
ffrt_queue_attr_set_thread_mode(ffrt_queue_attr_t * attr,bool mode)71 inline FFRT_C_API void ffrt_queue_attr_set_thread_mode(ffrt_queue_attr_t *attr, bool mode)
72 {}
73
ffrt_queue_attr_get_thread_mode(const ffrt_queue_attr_t * attr)74 inline FFRT_C_API bool ffrt_queue_attr_get_thread_mode(const ffrt_queue_attr_t *attr)
75 {
76 return true;
77 }
78
ffrt_queue_create(ffrt_queue_type_t type,const char * name,const ffrt_queue_attr_t * attr)79 inline FFRT_C_API ffrt_queue_t ffrt_queue_create(
80 ffrt_queue_type_t type, const char *name, const ffrt_queue_attr_t *attr)
81 {
82 return {};
83 }
84
ffrt_queue_destroy(ffrt_queue_t queue)85 inline FFRT_C_API void ffrt_queue_destroy(ffrt_queue_t queue)
86 {}
87
ffrt_queue_submit(ffrt_queue_t queue,ffrt_function_header_t * f,const ffrt_task_attr_t * attr)88 inline FFRT_C_API void ffrt_queue_submit(ffrt_queue_t queue, ffrt_function_header_t *f, const ffrt_task_attr_t *attr)
89 {}
90
ffrt_queue_submit_h(ffrt_queue_t queue,ffrt_function_header_t * f,const ffrt_task_attr_t * attr)91 inline FFRT_C_API ffrt_task_handle_t ffrt_queue_submit_h(
92 ffrt_queue_t queue, ffrt_function_header_t *f, const ffrt_task_attr_t *attr)
93 {
94 return {};
95 }
96
ffrt_queue_submit_f(ffrt_queue_t queue,ffrt_function_t func,void * arg,const ffrt_task_attr_t * attr)97 inline FFRT_C_API void ffrt_queue_submit_f(
98 ffrt_queue_t queue, ffrt_function_t func, void *arg, const ffrt_task_attr_t *attr)
99 {}
100
ffrt_queue_submit_h_f(ffrt_queue_t queue,ffrt_function_t func,void * arg,const ffrt_task_attr_t * attr)101 inline FFRT_C_API ffrt_task_handle_t ffrt_queue_submit_h_f(
102 ffrt_queue_t queue, ffrt_function_t func, void *arg, const ffrt_task_attr_t *attr)
103 {
104 return {};
105 }
106
ffrt_queue_wait(ffrt_task_handle_t handle)107 inline FFRT_C_API void ffrt_queue_wait(ffrt_task_handle_t handle)
108 {}
109
ffrt_queue_cancel(ffrt_task_handle_t handle)110 inline FFRT_C_API int ffrt_queue_cancel(ffrt_task_handle_t handle)
111 {
112 return 0;
113 }
114
ffrt_get_main_queue(void)115 inline FFRT_C_API ffrt_queue_t ffrt_get_main_queue(void)
116 {
117 return {};
118 }
119
ffrt_get_current_queue(void)120 inline FFRT_C_API ffrt_queue_t ffrt_get_current_queue(void)
121 {
122 return {};
123 }
124
ffrt_queue_get_task_cnt(ffrt_queue_t queue)125 inline FFRT_C_API uint64_t ffrt_queue_get_task_cnt(ffrt_queue_t queue)
126 {
127 return 0;
128 }
129
ffrt_queue_submit_head(ffrt_queue_t queue,ffrt_function_header_t * f,const ffrt_task_attr_t * attr)130 inline FFRT_C_API void ffrt_queue_submit_head(
131 ffrt_queue_t queue, ffrt_function_header_t *f, const ffrt_task_attr_t *attr)
132 {}
133
ffrt_queue_submit_head_h(ffrt_queue_t queue,ffrt_function_header_t * f,const ffrt_task_attr_t * attr)134 inline FFRT_C_API ffrt_task_handle_t ffrt_queue_submit_head_h(
135 ffrt_queue_t queue, ffrt_function_header_t *f, const ffrt_task_attr_t *attr)
136 {
137 return {};
138 }
139
140 #endif