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()27FrameUiIntf& FrameUiIntf::GetInstance() 28 { 29 static FrameUiIntf instance; 30 return instance; 31 } 32 Init()33void 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()47int FrameUiIntf::GetSenseSchedEnable() 48 { 49 if (!inited) { 50 return static_cast<int>(ErrorCode::FAIL); 51 } 52 return static_cast<int>(ErrorCode::SUCC); 53 } 54 BeginFlushAnimation() const55void FrameUiIntf::BeginFlushAnimation() const 56 { 57 if (!inited) { 58 return; 59 } 60 FrameMsgMgr::GetInstance().EventUpdate(FrameEvent::EVENT_FLUSH_ANIMATION_START); 61 } 62 EndFlushAnimation() const63void FrameUiIntf::EndFlushAnimation() const 64 { 65 if (!inited) { 66 return; 67 } 68 FrameMsgMgr::GetInstance().EventUpdate(FrameEvent::EVENT_FLUSH_ANIMATION_END); 69 } 70 BeginFlushBuild() const71void FrameUiIntf::BeginFlushBuild() const 72 { 73 if (!inited) { 74 return; 75 } 76 FrameMsgMgr::GetInstance().EventUpdate(FrameEvent::EVENT_FLUSH_BUILD_START); 77 } 78 EndFlushBuild() const79void FrameUiIntf::EndFlushBuild() const 80 { 81 if (!inited) { 82 return; 83 } 84 FrameMsgMgr::GetInstance().EventUpdate(FrameEvent::EVENT_FLUSH_BUILD_END); 85 } 86 BeginFlushLayout() const87void FrameUiIntf::BeginFlushLayout() const 88 { 89 if (!inited) { 90 return; 91 } 92 FrameMsgMgr::GetInstance().EventUpdate(FrameEvent::EVENT_FLUSH_LAYOUT_START); 93 } 94 EndFlushLayout() const95void FrameUiIntf::EndFlushLayout() const 96 { 97 if (!inited) { 98 return; 99 } 100 FrameMsgMgr::GetInstance().EventUpdate(FrameEvent::EVENT_FLUSH_LAYOUT_END); 101 } 102 BeginFlushRender() const103void FrameUiIntf::BeginFlushRender() const 104 { 105 if (!inited) { 106 return; 107 } 108 FrameMsgMgr::GetInstance().EventUpdate(FrameEvent::EVENT_FLUSH_RENDER_START); 109 } 110 EndFlushRender() const111void FrameUiIntf::EndFlushRender() const 112 { 113 if (!inited) { 114 return; 115 } 116 FrameMsgMgr::GetInstance().EventUpdate(FrameEvent::EVENT_FLUSH_RENDER_END); 117 } 118 BeginFlushRenderFinish() const119void FrameUiIntf::BeginFlushRenderFinish() const 120 { 121 if (!inited) { 122 return; 123 } 124 FrameMsgMgr::GetInstance().EventUpdate(FrameEvent::EVENT_FLUSH_RENDER_FINISH_START); 125 } 126 EndFlushRenderFinish() const127void FrameUiIntf::EndFlushRenderFinish() const 128 { 129 if (!inited) { 130 return; 131 } 132 FrameMsgMgr::GetInstance().EventUpdate(FrameEvent::EVENT_FLUSH_RENDER_FINISH_END); 133 } 134 BeginProcessPostFlush() const135void FrameUiIntf::BeginProcessPostFlush() const 136 { 137 if (!inited) { 138 return; 139 } 140 FrameMsgMgr::GetInstance().EventUpdate(FrameEvent::EVENT_PROCESS_POST_FLUSH_START); 141 } 142 ProcessCommandsStart() const143void FrameUiIntf::ProcessCommandsStart() const 144 { 145 if (!inited) { 146 return; 147 } 148 FrameMsgMgr::GetInstance().EventUpdate(FrameEvent::EVENT_PROCESS_COMMANDS_START); 149 } 150 AnimateStart() const151void FrameUiIntf::AnimateStart() const 152 { 153 if (!inited) { 154 return; 155 } 156 FrameMsgMgr::GetInstance().EventUpdate(FrameEvent::EVENT_ANIMATE_START); 157 } 158 RenderStart() const159void FrameUiIntf::RenderStart() const 160 { 161 if (!inited) { 162 return; 163 } 164 FrameMsgMgr::GetInstance().EventUpdate(FrameEvent::EVENT_RENDER_START); 165 } 166 RenderEnd() const167void FrameUiIntf::RenderEnd() const 168 { 169 return; 170 } 171 SendCommandsStart() const172void FrameUiIntf::SendCommandsStart() const 173 { 174 if (!inited) { 175 return; 176 } 177 FrameMsgMgr::GetInstance().EventUpdate(FrameEvent::EVENT_SEND_COMMANDS_START); 178 } 179 BeginListFling() const180void FrameUiIntf::BeginListFling() const 181 { 182 if (!inited) { 183 return; 184 } 185 FrameMsgMgr::GetInstance().EventUpdate(FrameEvent::EVENT_BEGIN_FRAME); 186 } 187 EndListFling() const188void FrameUiIntf::EndListFling() const 189 { 190 if (!inited) { 191 return; 192 } 193 FrameMsgMgr::GetInstance().EventUpdate(FrameEvent::EVENT_END_FRAME); 194 } 195 FlushBegin() const196void FrameUiIntf::FlushBegin() const 197 { 198 return; 199 } 200 FlushEnd() const201void FrameUiIntf::FlushEnd() const 202 { 203 return; 204 } 205 Init()206extern "C" void Init() 207 { 208 FrameUiIntf::GetInstance().Init(); 209 } 210 GetSenseSchedEnable()211extern "C" int GetSenseSchedEnable() 212 { 213 return FrameUiIntf::GetInstance().GetSenseSchedEnable(); 214 } 215 BeginFlushAnimation()216extern "C" void BeginFlushAnimation() 217 { 218 FrameUiIntf::GetInstance().BeginFlushAnimation(); 219 } 220 EndFlushAnimation()221extern "C" void EndFlushAnimation() 222 { 223 FrameUiIntf::GetInstance().EndFlushAnimation(); 224 } 225 BeginFlushBuild()226extern "C" void BeginFlushBuild() 227 { 228 FrameUiIntf::GetInstance().BeginFlushBuild(); 229 } 230 EndFlushBuild()231extern "C" void EndFlushBuild() 232 { 233 FrameUiIntf::GetInstance().EndFlushBuild(); 234 } 235 BeginFlushLayout()236extern "C" void BeginFlushLayout() 237 { 238 FrameUiIntf::GetInstance().BeginFlushLayout(); 239 } 240 EndFlushLayout()241extern "C" void EndFlushLayout() 242 { 243 FrameUiIntf::GetInstance().EndFlushLayout(); 244 } 245 BeginFlushRender()246extern "C" void BeginFlushRender() 247 { 248 FrameUiIntf::GetInstance().BeginFlushRender(); 249 } 250 EndFlushRender()251extern "C" void EndFlushRender() 252 { 253 FrameUiIntf::GetInstance().EndFlushRender(); 254 } 255 BeginFlushRenderFinish()256extern "C" void BeginFlushRenderFinish() 257 { 258 FrameUiIntf::GetInstance().BeginFlushRenderFinish(); 259 } 260 EndFlushRenderFinish()261extern "C" void EndFlushRenderFinish() 262 { 263 FrameUiIntf::GetInstance().EndFlushRenderFinish(); 264 } 265 BeginProcessPostFlush()266extern "C" void BeginProcessPostFlush() 267 { 268 FrameUiIntf::GetInstance().BeginProcessPostFlush(); 269 } 270 ProcessCommandsStart()271extern "C" void ProcessCommandsStart() 272 { 273 FrameUiIntf::GetInstance().ProcessCommandsStart(); 274 } 275 AnimateStart()276extern "C" void AnimateStart() 277 { 278 FrameUiIntf::GetInstance().AnimateStart(); 279 } 280 RenderStart()281extern "C" void RenderStart() 282 { 283 FrameUiIntf::GetInstance().RenderStart(); 284 } 285 RenderEnd()286extern "C" void RenderEnd() 287 { 288 FrameUiIntf::GetInstance().RenderEnd(); 289 } 290 SendCommandsStart()291extern "C" void SendCommandsStart() 292 { 293 FrameUiIntf::GetInstance().SendCommandsStart(); 294 } 295 BeginListFling()296extern "C" void BeginListFling() 297 { 298 FrameUiIntf::GetInstance().BeginListFling(); 299 } 300 EndListFling()301extern "C" void EndListFling() 302 { 303 FrameUiIntf::GetInstance().EndListFling(); 304 } 305 FlushBegin()306extern "C" void FlushBegin() 307 { 308 FrameUiIntf::GetInstance().FlushBegin(); 309 } 310 FlushEnd()311extern "C" void FlushEnd() 312 { 313 FrameUiIntf::GetInstance().FlushEnd(); 314 } 315 } // namespace RME 316 } // namespace OHOS 317