140e8eefbedcafc51948945647d746daaee092f16Adam Lesinski/*
240e8eefbedcafc51948945647d746daaee092f16Adam Lesinski * Copyright (C) 2014 The Android Open Source Project
340e8eefbedcafc51948945647d746daaee092f16Adam Lesinski *
440e8eefbedcafc51948945647d746daaee092f16Adam Lesinski * Licensed under the Apache License, Version 2.0 (the "License");
540e8eefbedcafc51948945647d746daaee092f16Adam Lesinski * you may not use this file except in compliance with the License.
640e8eefbedcafc51948945647d746daaee092f16Adam Lesinski * You may obtain a copy of the License at
740e8eefbedcafc51948945647d746daaee092f16Adam Lesinski *
840e8eefbedcafc51948945647d746daaee092f16Adam Lesinski *      http://www.apache.org/licenses/LICENSE-2.0
940e8eefbedcafc51948945647d746daaee092f16Adam Lesinski *
1040e8eefbedcafc51948945647d746daaee092f16Adam Lesinski * Unless required by applicable law or agreed to in writing, software
1140e8eefbedcafc51948945647d746daaee092f16Adam Lesinski * distributed under the License is distributed on an "AS IS" BASIS,
1240e8eefbedcafc51948945647d746daaee092f16Adam Lesinski * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1340e8eefbedcafc51948945647d746daaee092f16Adam Lesinski * See the License for the specific language governing permissions and
1440e8eefbedcafc51948945647d746daaee092f16Adam Lesinski * limitations under the License.
1540e8eefbedcafc51948945647d746daaee092f16Adam Lesinski */
1640e8eefbedcafc51948945647d746daaee092f16Adam Lesinski
1740e8eefbedcafc51948945647d746daaee092f16Adam Lesinski#ifndef H_ANDROID_SPLIT_ABI
1840e8eefbedcafc51948945647d746daaee092f16Adam Lesinski#define H_ANDROID_SPLIT_ABI
1940e8eefbedcafc51948945647d746daaee092f16Adam Lesinski
20c3dc0b57b8d0b3875f868788e110aa67fb032b4aAdam Lesinski#include <utils/Vector.h>
2140e8eefbedcafc51948945647d746daaee092f16Adam Lesinski
2240e8eefbedcafc51948945647d746daaee092f16Adam Lesinskinamespace split {
2340e8eefbedcafc51948945647d746daaee092f16Adam Lesinskinamespace abi {
2440e8eefbedcafc51948945647d746daaee092f16Adam Lesinski
25c3dc0b57b8d0b3875f868788e110aa67fb032b4aAdam Lesinskienum Variant {
26c3dc0b57b8d0b3875f868788e110aa67fb032b4aAdam Lesinski    Variant_none = 0,
27c3dc0b57b8d0b3875f868788e110aa67fb032b4aAdam Lesinski    Variant_armeabi,
28c3dc0b57b8d0b3875f868788e110aa67fb032b4aAdam Lesinski    Variant_armeabi_v7a,
29c3dc0b57b8d0b3875f868788e110aa67fb032b4aAdam Lesinski    Variant_arm64_v8a,
30c3dc0b57b8d0b3875f868788e110aa67fb032b4aAdam Lesinski    Variant_x86,
31c3dc0b57b8d0b3875f868788e110aa67fb032b4aAdam Lesinski    Variant_x86_64,
32c3dc0b57b8d0b3875f868788e110aa67fb032b4aAdam Lesinski    Variant_mips,
33c3dc0b57b8d0b3875f868788e110aa67fb032b4aAdam Lesinski    Variant_mips64,
3440e8eefbedcafc51948945647d746daaee092f16Adam Lesinski};
3540e8eefbedcafc51948945647d746daaee092f16Adam Lesinski
36c3dc0b57b8d0b3875f868788e110aa67fb032b4aAdam Lesinskienum Family {
37c3dc0b57b8d0b3875f868788e110aa67fb032b4aAdam Lesinski    Family_none,
38c3dc0b57b8d0b3875f868788e110aa67fb032b4aAdam Lesinski    Family_arm,
39c3dc0b57b8d0b3875f868788e110aa67fb032b4aAdam Lesinski    Family_intel,
40c3dc0b57b8d0b3875f868788e110aa67fb032b4aAdam Lesinski    Family_mips,
4140e8eefbedcafc51948945647d746daaee092f16Adam Lesinski};
4240e8eefbedcafc51948945647d746daaee092f16Adam Lesinski
4340e8eefbedcafc51948945647d746daaee092f16Adam LesinskiFamily getFamily(Variant variant);
44c3dc0b57b8d0b3875f868788e110aa67fb032b4aAdam Lesinskiconst android::Vector<Variant>& getVariants(Family family);
4540e8eefbedcafc51948945647d746daaee092f16Adam Lesinskiconst char* toString(Variant variant);
4640e8eefbedcafc51948945647d746daaee092f16Adam Lesinski
4740e8eefbedcafc51948945647d746daaee092f16Adam Lesinski} // namespace abi
4840e8eefbedcafc51948945647d746daaee092f16Adam Lesinski} // namespace split
4940e8eefbedcafc51948945647d746daaee092f16Adam Lesinski
5040e8eefbedcafc51948945647d746daaee092f16Adam Lesinski#endif // H_ANDROID_SPLIT_ABI
51