1  /*
2   * Copyright (c) 2024 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 "ark_interop_hitrace.h"
17  
18  #ifndef NO_HITRACE
19  #include "hitrace_meter.h"
20  
21  DECL_START
ARKTS_HiTraceStartTrace(const char * name,int32_t taskId)22  void ARKTS_HiTraceStartTrace(const char* name, int32_t taskId)
23  {
24      StartAsyncTrace(HITRACE_TAG_APP, name, taskId);
25  }
26  
ARKTS_HiTraceFinishTrace(const char * name,int32_t taskId)27  void ARKTS_HiTraceFinishTrace(const char* name, int32_t taskId)
28  {
29      FinishAsyncTrace(HITRACE_TAG_APP, name, taskId);
30  }
31  
ARKTS_HiTraceCountTrace(const char * name,int64_t count)32  void ARKTS_HiTraceCountTrace(const char* name, int64_t count)
33  {
34      CountTrace(HITRACE_TAG_APP, name, count);
35  }
36  
37  DECL_END
38  #else
39  void ARKTS_HiTraceStartTrace(const char* /* name */, int32_t /* taskId */) {}
40  void ARKTS_HiTraceFinishTrace(const char* /* name */, int32_t /* taskId */) {}
41  void ARKTS_HiTraceCountTrace(const char* /* name */, int64_t /* taskId */) {}
42  #endif