1// Copyright 2014 The Chromium Authors. All rights reserved. 2// Use of this source code is governed by a BSD-style license that can be 3// found in the LICENSE file. 4 5#ifndef CHROME_BROWSER_METRICS_VARIATIONS_GENERATED_RESOURCES_MAP_H_ 6#define CHROME_BROWSER_METRICS_VARIATIONS_GENERATED_RESOURCES_MAP_H_ 7 8#include "base/basictypes.h" 9 10namespace chrome_variations { 11 12// This file provides a mapping from hashes of generated resource names to their 13// IDs. This mapping is achieved by having two arrays: |kResourceHashes|, a 14// sorted array of resource name hashes; and |kResourceIndices|, an array of 15// resource indices in the same order as |kResourceHashes|. So, if 16// generated_resources.h contains |#define IDS_FOO 12345|, then for some index i 17// kResourceHashes[i] = HASH("IDS_FOO") and kResourceIndices[i] = 12345. Both 18// arrays are of length |kNumResources|. 19 20// The definitions of the arrays are generated by generate_resources_map.py from 21// the content of generated_resources.h. 22 23// Length of |kResourceHashes| and |kResourceIndices|. 24extern const size_t kNumResources; 25 26// A sorted array of hashed generated resource names. 27extern const uint32_t kResourceHashes[]; 28 29// An array of generated resource indices. The order of this array corresponds 30// to the order of |kResourceHashes|. 31extern const int kResourceIndices[]; 32 33// Gets the resource index corresponding to the given hash. 34int GetResourceIndex(uint32_t hash); 35 36} // namespace chrome_variations 37 38#endif // CHROME_BROWSER_METRICS_VARIATIONS_GENERATED_RESOURCES_MAP_H_ 39