| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef SYNC_UTIL_DATA_TYPE_HISTOGRAM_H_ | 5 #ifndef SYNC_UTIL_DATA_TYPE_HISTOGRAM_H_ |
| 6 #define SYNC_UTIL_DATA_TYPE_HISTOGRAM_H_ | 6 #define SYNC_UTIL_DATA_TYPE_HISTOGRAM_H_ |
| 7 | 7 |
| 8 #include "base/metrics/histogram.h" | 8 #include "base/metrics/histogram.h" |
| 9 #include "base/time.h" | 9 #include "base/time.h" |
| 10 #include "sync/internal_api/public/base/model_type.h" | 10 #include "sync/internal_api/public/base/model_type.h" |
| (...skipping 18 matching lines...) Expand all Loading... |
| 29 // #undef PER_DATA_TYPE_MACRO | 29 // #undef PER_DATA_TYPE_MACRO |
| 30 // } | 30 // } |
| 31 // | 31 // |
| 32 // TODO(zea): Once visual studio supports proper variadic argument replacement | 32 // TODO(zea): Once visual studio supports proper variadic argument replacement |
| 33 // in macros, pass in the histogram method directly as a parameter. | 33 // in macros, pass in the histogram method directly as a parameter. |
| 34 // See http://connect.microsoft.com/VisualStudio/feedback/details/380090/ | 34 // See http://connect.microsoft.com/VisualStudio/feedback/details/380090/ |
| 35 // variadic-macro-replacement#details | 35 // variadic-macro-replacement#details |
| 36 #define SYNC_DATA_TYPE_HISTOGRAM(datatype) \ | 36 #define SYNC_DATA_TYPE_HISTOGRAM(datatype) \ |
| 37 do { \ | 37 do { \ |
| 38 switch (datatype) { \ | 38 switch (datatype) { \ |
| 39 case syncer::BOOKMARKS: \ | 39 case ::syncer::BOOKMARKS: \ |
| 40 PER_DATA_TYPE_MACRO("Bookmarks"); \ | 40 PER_DATA_TYPE_MACRO("Bookmarks"); \ |
| 41 break; \ | 41 break; \ |
| 42 case syncer::PREFERENCES: \ | 42 case ::syncer::PREFERENCES: \ |
| 43 PER_DATA_TYPE_MACRO("Preferences"); \ | 43 PER_DATA_TYPE_MACRO("Preferences"); \ |
| 44 break; \ | 44 break; \ |
| 45 case syncer::PASSWORDS: \ | 45 case ::syncer::PASSWORDS: \ |
| 46 PER_DATA_TYPE_MACRO("Passwords"); \ | 46 PER_DATA_TYPE_MACRO("Passwords"); \ |
| 47 break; \ | 47 break; \ |
| 48 case syncer::AUTOFILL: \ | 48 case ::syncer::AUTOFILL: \ |
| 49 PER_DATA_TYPE_MACRO("Autofill"); \ | 49 PER_DATA_TYPE_MACRO("Autofill"); \ |
| 50 break; \ | 50 break; \ |
| 51 case syncer::AUTOFILL_PROFILE: \ | 51 case ::syncer::AUTOFILL_PROFILE: \ |
| 52 PER_DATA_TYPE_MACRO("AutofillProfiles"); \ | 52 PER_DATA_TYPE_MACRO("AutofillProfiles"); \ |
| 53 break; \ | 53 break; \ |
| 54 case syncer::THEMES: \ | 54 case ::syncer::THEMES: \ |
| 55 PER_DATA_TYPE_MACRO("Themes"); \ | 55 PER_DATA_TYPE_MACRO("Themes"); \ |
| 56 break; \ | 56 break; \ |
| 57 case syncer::TYPED_URLS: \ | 57 case ::syncer::TYPED_URLS: \ |
| 58 PER_DATA_TYPE_MACRO("TypedUrls"); \ | 58 PER_DATA_TYPE_MACRO("TypedUrls"); \ |
| 59 break; \ | 59 break; \ |
| 60 case syncer::EXTENSIONS: \ | 60 case ::syncer::EXTENSIONS: \ |
| 61 PER_DATA_TYPE_MACRO("Extensions"); \ | 61 PER_DATA_TYPE_MACRO("Extensions"); \ |
| 62 break; \ | 62 break; \ |
| 63 case syncer::NIGORI: \ | 63 case ::syncer::NIGORI: \ |
| 64 PER_DATA_TYPE_MACRO("Nigori"); \ | 64 PER_DATA_TYPE_MACRO("Nigori"); \ |
| 65 break; \ | 65 break; \ |
| 66 case syncer::SEARCH_ENGINES: \ | 66 case ::syncer::SEARCH_ENGINES: \ |
| 67 PER_DATA_TYPE_MACRO("SearchEngines"); \ | 67 PER_DATA_TYPE_MACRO("SearchEngines"); \ |
| 68 break; \ | 68 break; \ |
| 69 case syncer::SESSIONS: \ | 69 case ::syncer::SESSIONS: \ |
| 70 PER_DATA_TYPE_MACRO("Sessions"); \ | 70 PER_DATA_TYPE_MACRO("Sessions"); \ |
| 71 break; \ | 71 break; \ |
| 72 case syncer::APPS: \ | 72 case ::syncer::APPS: \ |
| 73 PER_DATA_TYPE_MACRO("Apps"); \ | 73 PER_DATA_TYPE_MACRO("Apps"); \ |
| 74 break; \ | 74 break; \ |
| 75 case syncer::APP_SETTINGS: \ | 75 case ::syncer::APP_SETTINGS: \ |
| 76 PER_DATA_TYPE_MACRO("AppSettings"); \ | 76 PER_DATA_TYPE_MACRO("AppSettings"); \ |
| 77 break; \ | 77 break; \ |
| 78 case syncer::EXTENSION_SETTINGS: \ | 78 case ::syncer::EXTENSION_SETTINGS: \ |
| 79 PER_DATA_TYPE_MACRO("ExtensionSettings"); \ | 79 PER_DATA_TYPE_MACRO("ExtensionSettings"); \ |
| 80 break; \ | 80 break; \ |
| 81 case syncer::APP_NOTIFICATIONS: \ | 81 case ::syncer::APP_NOTIFICATIONS: \ |
| 82 PER_DATA_TYPE_MACRO("AppNotifications"); \ | 82 PER_DATA_TYPE_MACRO("AppNotifications"); \ |
| 83 break; \ | 83 break; \ |
| 84 default: \ | 84 default: \ |
| 85 NOTREACHED() << "Unknown datatype " \ | 85 NOTREACHED() << "Unknown datatype " \ |
| 86 << syncer::ModelTypeToString(datatype); \ | 86 << ::syncer::ModelTypeToString(datatype); \ |
| 87 } \ | 87 } \ |
| 88 } while (0) | 88 } while (0) |
| 89 | 89 |
| 90 #endif // SYNC_UTIL_DATA_TYPE_HISTOGRAM_H_ | 90 #endif // SYNC_UTIL_DATA_TYPE_HISTOGRAM_H_ |
| OLD | NEW |