• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (c) 2022 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 
16 #include "frame_ui_intf.h"
17 
18 #include "frame_info_const.h"
19 #include "rme_constants.h"
20 #include "frame_msg_mgr.h"
21 #include "rme_log_domain.h"
22 
23 namespace OHOS {
24 namespace RME {
25 DEFINE_RMELOG_INTELLISENSE("ueaClient-FrameUiIntf");
26 
GetInstance()27 FrameUiIntf& FrameUiIntf::GetInstance()
28 {
29     static FrameUiIntf instance;
30     return instance;
31 }
32 
Init()33 void FrameUiIntf::Init()
34 {
35     if (inited) {
36         return;
37     }
38     int ret = FrameMsgMgr::GetInstance().Init();
39     if (!ret) {
40         inited = false;
41     } else {
42         inited = true;
43     }
44     RME_LOGI("[Init]:ret:%{public}d, inited:%{public}d", ret, inited);
45 }
46 
GetSenseSchedEnable()47 int FrameUiIntf::GetSenseSchedEnable()
48 {
49     if (!inited) {
50         return static_cast<int>(ErrorCode::FAIL);
51     }
52     return static_cast<int>(ErrorCode::SUCC);
53 }
54 
BeginFlushAnimation() const55 void FrameUiIntf::BeginFlushAnimation() const
56 {
57     if (!inited) {
58         return;
59     }
60     FrameMsgMgr::GetInstance().EventUpdate(FrameEvent::EVENT_FLUSH_ANIMATION_START);
61 }
62 
EndFlushAnimation() const63 void FrameUiIntf::EndFlushAnimation() const
64 {
65     if (!inited) {
66         return;
67     }
68     FrameMsgMgr::GetInstance().EventUpdate(FrameEvent::EVENT_FLUSH_ANIMATION_END);
69 }
70 
BeginFlushBuild() const71 void FrameUiIntf::BeginFlushBuild() const
72 {
73     if (!inited) {
74         return;
75     }
76     FrameMsgMgr::GetInstance().EventUpdate(FrameEvent::EVENT_FLUSH_BUILD_START);
77 }
78 
EndFlushBuild() const79 void FrameUiIntf::EndFlushBuild() const
80 {
81     if (!inited) {
82         return;
83     }
84     FrameMsgMgr::GetInstance().EventUpdate(FrameEvent::EVENT_FLUSH_BUILD_END);
85 }
86 
BeginFlushLayout() const87 void FrameUiIntf::BeginFlushLayout() const
88 {
89     if (!inited) {
90         return;
91     }
92     FrameMsgMgr::GetInstance().EventUpdate(FrameEvent::EVENT_FLUSH_LAYOUT_START);
93 }
94 
EndFlushLayout() const95 void FrameUiIntf::EndFlushLayout() const
96 {
97     if (!inited) {
98         return;
99     }
100     FrameMsgMgr::GetInstance().EventUpdate(FrameEvent::EVENT_FLUSH_LAYOUT_END);
101 }
102 
BeginFlushRender() const103 void FrameUiIntf::BeginFlushRender() const
104 {
105     if (!inited) {
106         return;
107     }
108     FrameMsgMgr::GetInstance().EventUpdate(FrameEvent::EVENT_FLUSH_RENDER_START);
109 }
110 
EndFlushRender() const111 void FrameUiIntf::EndFlushRender() const
112 {
113     if (!inited) {
114         return;
115     }
116     FrameMsgMgr::GetInstance().EventUpdate(FrameEvent::EVENT_FLUSH_RENDER_END);
117 }
118 
BeginFlushRenderFinish() const119 void FrameUiIntf::BeginFlushRenderFinish() const
120 {
121     if (!inited) {
122         return;
123     }
124     FrameMsgMgr::GetInstance().EventUpdate(FrameEvent::EVENT_FLUSH_RENDER_FINISH_START);
125 }
126 
EndFlushRenderFinish() const127 void FrameUiIntf::EndFlushRenderFinish() const
128 {
129     if (!inited) {
130         return;
131     }
132     FrameMsgMgr::GetInstance().EventUpdate(FrameEvent::EVENT_FLUSH_RENDER_FINISH_END);
133 }
134 
BeginProcessPostFlush() const135 void FrameUiIntf::BeginProcessPostFlush() const
136 {
137     if (!inited) {
138         return;
139     }
140     FrameMsgMgr::GetInstance().EventUpdate(FrameEvent::EVENT_PROCESS_POST_FLUSH_START);
141 }
142 
ProcessCommandsStart() const143 void FrameUiIntf::ProcessCommandsStart() const
144 {
145     if (!inited) {
146         return;
147     }
148     FrameMsgMgr::GetInstance().EventUpdate(FrameEvent::EVENT_PROCESS_COMMANDS_START);
149 }
150 
AnimateStart() const151 void FrameUiIntf::AnimateStart() const
152 {
153     if (!inited) {
154         return;
155     }
156     FrameMsgMgr::GetInstance().EventUpdate(FrameEvent::EVENT_ANIMATE_START);
157 }
158 
RenderStart(uint64_t timestamp) const159 void FrameUiIntf::RenderStart(uint64_t timestamp) const
160 {
161     if (!inited) {
162         return;
163     }
164     FrameMsgMgr::GetInstance().EventUpdate(FrameEvent::EVENT_RENDER_START);
165 }
166 
RenderEnd() const167 void FrameUiIntf::RenderEnd() const
168 {
169     return;
170 }
171 
SendCommandsStart() const172 void FrameUiIntf::SendCommandsStart() const
173 {
174     if (!inited) {
175         return;
176     }
177     FrameMsgMgr::GetInstance().EventUpdate(FrameEvent::EVENT_SEND_COMMANDS_START);
178 }
179 
BeginListFling() const180 void FrameUiIntf::BeginListFling() const
181 {
182     if (!inited) {
183         return;
184     }
185     FrameMsgMgr::GetInstance().EventUpdate(FrameEvent::EVENT_BEGIN_FRAME);
186 }
187 
EndListFling() const188 void FrameUiIntf::EndListFling() const
189 {
190     if (!inited) {
191         return;
192     }
193     FrameMsgMgr::GetInstance().EventUpdate(FrameEvent::EVENT_END_FRAME);
194 }
195 
FlushBegin() const196 void FrameUiIntf::FlushBegin() const
197 {
198     return;
199 }
200 
FlushEnd() const201 void FrameUiIntf::FlushEnd() const
202 {
203     return;
204 }
205 
SetFrameParam(int requestId,int load,int schedFrameNum,int value) const206 void FrameUiIntf::SetFrameParam(int requestId, int load, int schedFrameNum, int value) const
207 {
208     return;
209 }
210 
Init()211 extern "C" void Init()
212 {
213     FrameUiIntf::GetInstance().Init();
214 }
215 
GetSenseSchedEnable()216 extern "C" int GetSenseSchedEnable()
217 {
218     return FrameUiIntf::GetInstance().GetSenseSchedEnable();
219 }
220 
BeginFlushAnimation()221 extern "C" void BeginFlushAnimation()
222 {
223     FrameUiIntf::GetInstance().BeginFlushAnimation();
224 }
225 
EndFlushAnimation()226 extern "C" void EndFlushAnimation()
227 {
228     FrameUiIntf::GetInstance().EndFlushAnimation();
229 }
230 
BeginFlushBuild()231 extern "C" void BeginFlushBuild()
232 {
233     FrameUiIntf::GetInstance().BeginFlushBuild();
234 }
235 
EndFlushBuild()236 extern "C" void EndFlushBuild()
237 {
238     FrameUiIntf::GetInstance().EndFlushBuild();
239 }
240 
BeginFlushLayout()241 extern "C" void BeginFlushLayout()
242 {
243     FrameUiIntf::GetInstance().BeginFlushLayout();
244 }
245 
EndFlushLayout()246 extern "C" void EndFlushLayout()
247 {
248     FrameUiIntf::GetInstance().EndFlushLayout();
249 }
250 
BeginFlushRender()251 extern "C" void BeginFlushRender()
252 {
253     FrameUiIntf::GetInstance().BeginFlushRender();
254 }
255 
EndFlushRender()256 extern "C" void EndFlushRender()
257 {
258     FrameUiIntf::GetInstance().EndFlushRender();
259 }
260 
BeginFlushRenderFinish()261 extern "C" void BeginFlushRenderFinish()
262 {
263     FrameUiIntf::GetInstance().BeginFlushRenderFinish();
264 }
265 
EndFlushRenderFinish()266 extern "C" void EndFlushRenderFinish()
267 {
268     FrameUiIntf::GetInstance().EndFlushRenderFinish();
269 }
270 
BeginProcessPostFlush()271 extern "C" void BeginProcessPostFlush()
272 {
273     FrameUiIntf::GetInstance().BeginProcessPostFlush();
274 }
275 
ProcessCommandsStart()276 extern "C" void ProcessCommandsStart()
277 {
278     FrameUiIntf::GetInstance().ProcessCommandsStart();
279 }
280 
AnimateStart()281 extern "C" void AnimateStart()
282 {
283     FrameUiIntf::GetInstance().AnimateStart();
284 }
285 
RenderStart(uint64_t timestamp)286 extern "C" void RenderStart(uint64_t timestamp)
287 {
288     FrameUiIntf::GetInstance().RenderStart(timestamp);
289 }
290 
RenderEnd()291 extern "C" void RenderEnd()
292 {
293     FrameUiIntf::GetInstance().RenderEnd();
294 }
295 
SendCommandsStart()296 extern "C" void SendCommandsStart()
297 {
298     FrameUiIntf::GetInstance().SendCommandsStart();
299 }
300 
BeginListFling()301 extern "C" void BeginListFling()
302 {
303     FrameUiIntf::GetInstance().BeginListFling();
304 }
305 
EndListFling()306 extern "C" void EndListFling()
307 {
308     FrameUiIntf::GetInstance().EndListFling();
309 }
310 
FlushBegin()311 extern "C" void FlushBegin()
312 {
313     FrameUiIntf::GetInstance().FlushBegin();
314 }
315 
FlushEnd()316 extern "C" void FlushEnd()
317 {
318     FrameUiIntf::GetInstance().FlushEnd();
319 }
320 
SetFrameParam(int requestId,int load,int schedFrameNum,int value)321 extern "C" void SetFrameParam(int requestId, int load, int schedFrameNum, int value)
322 {
323     FrameUiIntf::GetInstance().SetFrameParam(requestId, load, schedFrameNum, value);
324 }
325 } // namespace RME
326 } // namespace OHOS
327