| #ifndef CONFIGURATION_H | 
 | #define CONFIGURATION_H | 
 |  | 
 | #include <string> | 
 |  | 
 | using namespace std; | 
 |  | 
 | struct Configuration | 
 | { | 
 |     string locale; | 
 |     string vendor; | 
 |     string orientation; | 
 |     string density; | 
 |     string touchscreen; | 
 |     string keyboard; | 
 |     string navigation; | 
 |     string screenSize; | 
 |  | 
 |     // Compare two configurations | 
 |     int Compare(const Configuration& that) const; | 
 |  | 
 |     inline bool operator<(const Configuration& that) const { return Compare(that) < 0; } | 
 |     inline bool operator<=(const Configuration& that) const { return Compare(that) <= 0; } | 
 |     inline bool operator==(const Configuration& that) const { return Compare(that) == 0; } | 
 |     inline bool operator!=(const Configuration& that) const { return Compare(that) != 0; } | 
 |     inline bool operator>=(const Configuration& that) const { return Compare(that) >= 0; } | 
 |     inline bool operator>(const Configuration& that) const { return Compare(that) > 0; } | 
 |  | 
 |     // Parse a directory name, like "values-en-rUS".  Return the first segment in resType. | 
 |     bool ParseDiectoryName(const string& dir, string* resType); | 
 |  | 
 |     string ToString() const; | 
 | }; | 
 |  | 
 | bool split_locale(const string& in, string* language, string* region); | 
 |  | 
 |  | 
 | #endif // CONFIGURATION_H |