OSDN Git Service

am ab64919c: Merge "docs: update reference to FragmentRetainInstance" into klp-modula...
[android-x86/frameworks-base.git] / tools / aapt / ResourceFilter.h
1 //
2 // Copyright 2011 The Android Open Source Project
3 //
4 // Build resource files from raw assets.
5 //
6
7 #ifndef RESOURCE_FILTER_H
8 #define RESOURCE_FILTER_H
9
10 #include "AaptAssets.h"
11
12 /**
13  * Implements logic for parsing and handling "-c" and "--preferred-configurations"
14  * options.
15  */
16 class ResourceFilter
17 {
18 public:
19     ResourceFilter() : mData(), mContainsPseudoAccented(false),
20         mContainsPseudoBidi(false) {}
21     status_t parse(const char* arg);
22     bool isEmpty() const;
23     bool match(int axis, const ResTable_config& config) const;
24     bool match(const ResTable_config& config) const;
25     const SortedVector<AxisValue>* configsForAxis(int axis) const;
26     inline bool containsPseudo() const { return mContainsPseudoAccented; }
27     inline bool containsPseudoBidi() const { return mContainsPseudoBidi; }
28
29 private:
30     bool match(int axis, const AxisValue& value) const;
31
32     KeyedVector<int,SortedVector<AxisValue> > mData;
33     bool mContainsPseudoAccented;
34     bool mContainsPseudoBidi;
35 };
36
37 #endif