blob: da6262e358a8d974be33292a4621863d135519a3 [file] [log] [blame]
// Copyright 2017 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef CHROME_ELF_WHITELIST_WHITELIST_IME_H_
#define CHROME_ELF_WHITELIST_WHITELIST_IME_H_
#include <stdint.h>
namespace whitelist {
// "static_cast<int>(IMEStatus::value)" to access underlying value.
enum class IMEStatus {
kSuccess = 0,
kErrorGeneric = 1,
kMissingRegKey = 2,
kRegAccessDenied = 3,
kGenericRegFailure = 4,
COUNT
};
// This list of IMEs was provided by Microsoft as their own.
extern const wchar_t* const kMicrosoftImeGuids[];
// The number of elements in the kMicrosoftImeGuids array.
extern const uint32_t kMicrosoftImeGuidsLength;
// The length of a GUID string. (Hard-coded for compile time.)
enum { kGuidLength = 38 };
// Constant registry locations for IME information.
extern const wchar_t kClassesKey[];
extern const wchar_t kClassesSubkey[];
extern const wchar_t kImeRegistryKey[];
// Initialize internal list of registered IMEs.
IMEStatus InitIMEs();
} // namespace whitelist
#endif // CHROME_ELF_WHITELIST_WHITELIST_IME_H_