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  #ifndef OHOS_ABILITY_RUNTIME_APP_JSHEAP_MEM_INFO_H
17  #define OHOS_ABILITY_RUNTIME_APP_JSHEAP_MEM_INFO_H
18  
19  #include "parcel.h"
20  #include "iremote_object.h"
21  
22  namespace OHOS {
23  namespace AppExecFwk {
24  struct JsHeapDumpInfo : public Parcelable {
25      uint32_t pid = 0;
26      uint32_t tid = 0;
27      bool needGc = false;
28      bool needSnapshot = false;
29      bool needLeakobj = false;
30      virtual bool Marshalling(Parcel &parcel) const override;
31      static JsHeapDumpInfo *Unmarshalling(Parcel &parcel);
32  };
33  } // namespace AppExecFwk
34  } // namespace OHOS
35  
36  #endif // OHOS_ABILITY_RUNTIME_APP_JSHEAP_MEM_INFO_H