1d48944a745f9ed121e6bde22ef6feb3a44fbec39Adam Lesinski/*
2d48944a745f9ed121e6bde22ef6feb3a44fbec39Adam Lesinski * Copyright (C) 2017 The Android Open Source Project
3d48944a745f9ed121e6bde22ef6feb3a44fbec39Adam Lesinski *
4d48944a745f9ed121e6bde22ef6feb3a44fbec39Adam Lesinski * Licensed under the Apache License, Version 2.0 (the "License");
5d48944a745f9ed121e6bde22ef6feb3a44fbec39Adam Lesinski * you may not use this file except in compliance with the License.
6d48944a745f9ed121e6bde22ef6feb3a44fbec39Adam Lesinski * You may obtain a copy of the License at
7d48944a745f9ed121e6bde22ef6feb3a44fbec39Adam Lesinski *
8d48944a745f9ed121e6bde22ef6feb3a44fbec39Adam Lesinski *      http://www.apache.org/licenses/LICENSE-2.0
9d48944a745f9ed121e6bde22ef6feb3a44fbec39Adam Lesinski *
10d48944a745f9ed121e6bde22ef6feb3a44fbec39Adam Lesinski * Unless required by applicable law or agreed to in writing, software
11d48944a745f9ed121e6bde22ef6feb3a44fbec39Adam Lesinski * distributed under the License is distributed on an "AS IS" BASIS,
12d48944a745f9ed121e6bde22ef6feb3a44fbec39Adam Lesinski * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13d48944a745f9ed121e6bde22ef6feb3a44fbec39Adam Lesinski * See the License for the specific language governing permissions and
14d48944a745f9ed121e6bde22ef6feb3a44fbec39Adam Lesinski * limitations under the License.
15d48944a745f9ed121e6bde22ef6feb3a44fbec39Adam Lesinski */
16d48944a745f9ed121e6bde22ef6feb3a44fbec39Adam Lesinski
17d48944a745f9ed121e6bde22ef6feb3a44fbec39Adam Lesinski#ifndef AAPT_OPTIMIZE_VERSIONCOLLAPSER_H
18d48944a745f9ed121e6bde22ef6feb3a44fbec39Adam Lesinski#define AAPT_OPTIMIZE_VERSIONCOLLAPSER_H
19d48944a745f9ed121e6bde22ef6feb3a44fbec39Adam Lesinski
20d48944a745f9ed121e6bde22ef6feb3a44fbec39Adam Lesinski#include "android-base/macros.h"
21d48944a745f9ed121e6bde22ef6feb3a44fbec39Adam Lesinski
22d48944a745f9ed121e6bde22ef6feb3a44fbec39Adam Lesinski#include "process/IResourceTableConsumer.h"
23d48944a745f9ed121e6bde22ef6feb3a44fbec39Adam Lesinski
24d48944a745f9ed121e6bde22ef6feb3a44fbec39Adam Lesinskinamespace aapt {
25d48944a745f9ed121e6bde22ef6feb3a44fbec39Adam Lesinski
26d48944a745f9ed121e6bde22ef6feb3a44fbec39Adam Lesinskiclass ResourceTable;
27d48944a745f9ed121e6bde22ef6feb3a44fbec39Adam Lesinski
28d48944a745f9ed121e6bde22ef6feb3a44fbec39Adam Lesinskiclass VersionCollapser : public IResourceTableConsumer {
29d48944a745f9ed121e6bde22ef6feb3a44fbec39Adam Lesinski public:
30d48944a745f9ed121e6bde22ef6feb3a44fbec39Adam Lesinski  VersionCollapser() = default;
31d48944a745f9ed121e6bde22ef6feb3a44fbec39Adam Lesinski
32d48944a745f9ed121e6bde22ef6feb3a44fbec39Adam Lesinski  bool Consume(IAaptContext* context, ResourceTable* table) override;
33d48944a745f9ed121e6bde22ef6feb3a44fbec39Adam Lesinski
34d48944a745f9ed121e6bde22ef6feb3a44fbec39Adam Lesinski private:
35d48944a745f9ed121e6bde22ef6feb3a44fbec39Adam Lesinski  DISALLOW_COPY_AND_ASSIGN(VersionCollapser);
36d48944a745f9ed121e6bde22ef6feb3a44fbec39Adam Lesinski};
37d48944a745f9ed121e6bde22ef6feb3a44fbec39Adam Lesinski
38d48944a745f9ed121e6bde22ef6feb3a44fbec39Adam Lesinski} // namespace aapt
39d48944a745f9ed121e6bde22ef6feb3a44fbec39Adam Lesinski
40d48944a745f9ed121e6bde22ef6feb3a44fbec39Adam Lesinski#endif  // AAPT_OPTIMIZE_VERSIONCOLLAPSER_H
41