1b80c1f19c58b927820a8a24bf2218e5645724608Raph Levien/*
2b80c1f19c58b927820a8a24bf2218e5645724608Raph Levien * Copyright (C) 2014 The Android Open Source Project
3b80c1f19c58b927820a8a24bf2218e5645724608Raph Levien *
4b80c1f19c58b927820a8a24bf2218e5645724608Raph Levien * Licensed under the Apache License, Version 2.0 (the "License");
5b80c1f19c58b927820a8a24bf2218e5645724608Raph Levien * you may not use this file except in compliance with the License.
6b80c1f19c58b927820a8a24bf2218e5645724608Raph Levien * You may obtain a copy of the License at
7b80c1f19c58b927820a8a24bf2218e5645724608Raph Levien *
8b80c1f19c58b927820a8a24bf2218e5645724608Raph Levien *      http://www.apache.org/licenses/LICENSE-2.0
9b80c1f19c58b927820a8a24bf2218e5645724608Raph Levien *
10b80c1f19c58b927820a8a24bf2218e5645724608Raph Levien * Unless required by applicable law or agreed to in writing, software
11b80c1f19c58b927820a8a24bf2218e5645724608Raph Levien * distributed under the License is distributed on an "AS IS" BASIS,
12b80c1f19c58b927820a8a24bf2218e5645724608Raph Levien * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13b80c1f19c58b927820a8a24bf2218e5645724608Raph Levien * See the License for the specific language governing permissions and
14b80c1f19c58b927820a8a24bf2218e5645724608Raph Levien * limitations under the License.
15b80c1f19c58b927820a8a24bf2218e5645724608Raph Levien */
16b80c1f19c58b927820a8a24bf2218e5645724608Raph Levien
17b80c1f19c58b927820a8a24bf2218e5645724608Raph Levien// Definitions internal to Minikin
18b80c1f19c58b927820a8a24bf2218e5645724608Raph Levien
19b80c1f19c58b927820a8a24bf2218e5645724608Raph Levien#ifndef MINIKIN_INTERNAL_H
20b80c1f19c58b927820a8a24bf2218e5645724608Raph Levien#define MINIKIN_INTERNAL_H
21b80c1f19c58b927820a8a24bf2218e5645724608Raph Levien
22b80c1f19c58b927820a8a24bf2218e5645724608Raph Levien#include <utils/Mutex.h>
23b80c1f19c58b927820a8a24bf2218e5645724608Raph Levien
24b80c1f19c58b927820a8a24bf2218e5645724608Raph Leviennamespace android {
25b80c1f19c58b927820a8a24bf2218e5645724608Raph Levien
26b80c1f19c58b927820a8a24bf2218e5645724608Raph Levien// All external Minikin interfaces are designed to be thread-safe.
27b80c1f19c58b927820a8a24bf2218e5645724608Raph Levien// Presently, that's implemented by through a global lock, and having
28b80c1f19c58b927820a8a24bf2218e5645724608Raph Levien// all external interfaces take that lock.
29b80c1f19c58b927820a8a24bf2218e5645724608Raph Levien
30b80c1f19c58b927820a8a24bf2218e5645724608Raph Levienextern Mutex gMinikinLock;
31b80c1f19c58b927820a8a24bf2218e5645724608Raph Levien
32b80c1f19c58b927820a8a24bf2218e5645724608Raph Levien}
33b80c1f19c58b927820a8a24bf2218e5645724608Raph Levien
34b80c1f19c58b927820a8a24bf2218e5645724608Raph Levien#endif  // MINIKIN_INTERNAL_H
35