• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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