1ff1c1a2ab3ff2614bb6cea1f1d6f6e9c44a87464Arthur Ishiguro/*
2ff1c1a2ab3ff2614bb6cea1f1d6f6e9c44a87464Arthur Ishiguro * Copyright (C) 2017 The Android Open Source Project
3ff1c1a2ab3ff2614bb6cea1f1d6f6e9c44a87464Arthur Ishiguro *
4ff1c1a2ab3ff2614bb6cea1f1d6f6e9c44a87464Arthur Ishiguro * Licensed under the Apache License, Version 2.0 (the "License");
5ff1c1a2ab3ff2614bb6cea1f1d6f6e9c44a87464Arthur Ishiguro * you may not use this file except in compliance with the License.
6ff1c1a2ab3ff2614bb6cea1f1d6f6e9c44a87464Arthur Ishiguro * You may obtain a copy of the License at
7ff1c1a2ab3ff2614bb6cea1f1d6f6e9c44a87464Arthur Ishiguro *
8ff1c1a2ab3ff2614bb6cea1f1d6f6e9c44a87464Arthur Ishiguro *      http://www.apache.org/licenses/LICENSE-2.0
9ff1c1a2ab3ff2614bb6cea1f1d6f6e9c44a87464Arthur Ishiguro *
10ff1c1a2ab3ff2614bb6cea1f1d6f6e9c44a87464Arthur Ishiguro * Unless required by applicable law or agreed to in writing, software
11ff1c1a2ab3ff2614bb6cea1f1d6f6e9c44a87464Arthur Ishiguro * distributed under the License is distributed on an "AS IS" BASIS,
12ff1c1a2ab3ff2614bb6cea1f1d6f6e9c44a87464Arthur Ishiguro * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13ff1c1a2ab3ff2614bb6cea1f1d6f6e9c44a87464Arthur Ishiguro * See the License for the specific language governing permissions and
14ff1c1a2ab3ff2614bb6cea1f1d6f6e9c44a87464Arthur Ishiguro * limitations under the License.
15ff1c1a2ab3ff2614bb6cea1f1d6f6e9c44a87464Arthur Ishiguro */
16ff1c1a2ab3ff2614bb6cea1f1d6f6e9c44a87464Arthur Ishiguro
17ff1c1a2ab3ff2614bb6cea1f1d6f6e9c44a87464Arthur Ishiguro#ifndef CHRE_PLATFORM_SHARED_PLATFORM_PAL_H_
18ff1c1a2ab3ff2614bb6cea1f1d6f6e9c44a87464Arthur Ishiguro#define CHRE_PLATFORM_SHARED_PLATFORM_PAL_H_
19ff1c1a2ab3ff2614bb6cea1f1d6f6e9c44a87464Arthur Ishiguro
20ff1c1a2ab3ff2614bb6cea1f1d6f6e9c44a87464Arthur Ishiguronamespace chre {
21ff1c1a2ab3ff2614bb6cea1f1d6f6e9c44a87464Arthur Ishiguro
22ff1c1a2ab3ff2614bb6cea1f1d6f6e9c44a87464Arthur Ishiguro/**
23ff1c1a2ab3ff2614bb6cea1f1d6f6e9c44a87464Arthur Ishiguro * Provides an instance of the PlatformPal class that uses the CHRE PAL.
24ff1c1a2ab3ff2614bb6cea1f1d6f6e9c44a87464Arthur Ishiguro */
25ff1c1a2ab3ff2614bb6cea1f1d6f6e9c44a87464Arthur Ishiguroclass PlatformPal {
26ff1c1a2ab3ff2614bb6cea1f1d6f6e9c44a87464Arthur Ishiguro protected:
27ff1c1a2ab3ff2614bb6cea1f1d6f6e9c44a87464Arthur Ishiguro   /**
28ff1c1a2ab3ff2614bb6cea1f1d6f6e9c44a87464Arthur Ishiguro    * Routine to be performed before any call to a platform PAL API.
29ff1c1a2ab3ff2614bb6cea1f1d6f6e9c44a87464Arthur Ishiguro    */
30ff1c1a2ab3ff2614bb6cea1f1d6f6e9c44a87464Arthur Ishiguro  void prePalApiCall();
31ff1c1a2ab3ff2614bb6cea1f1d6f6e9c44a87464Arthur Ishiguro};
32ff1c1a2ab3ff2614bb6cea1f1d6f6e9c44a87464Arthur Ishiguro
33ff1c1a2ab3ff2614bb6cea1f1d6f6e9c44a87464Arthur Ishiguro}  // namespace chre
34ff1c1a2ab3ff2614bb6cea1f1d6f6e9c44a87464Arthur Ishiguro
35ff1c1a2ab3ff2614bb6cea1f1d6f6e9c44a87464Arthur Ishiguro#endif  // CHRE_PLATFORM_SHARED_PLATFORM_PAL_H_
36