1 // Copyright (c) Microsoft. All rights reserved.
2 // Licensed under the MIT license. See LICENSE file in the project root for full license information.
3 #if FEATURE_WIN32_REGISTRY
4 
5 using System;
6 using System.IO;
7 using System.Diagnostics;
8 using System.Globalization;
9 using Microsoft.Win32;
10 using System.Collections;
11 using System.Collections.Generic;
12 
13 namespace Microsoft.Build.Shared
14 {  /// <summary>
15    /// Given a registry hive and a request view open the base key for that registry location.
16    /// </summary>
OpenBaseKey(RegistryHive hive, RegistryView view)17     internal delegate RegistryKey OpenBaseKey(RegistryHive hive, RegistryView view);
18 
19     /// <summary>
20     /// Simplified registry access delegate. Given a baseKey and a subKey, get all of the subkey
21     /// names.
22     /// </summary>
23     /// <param name="baseKey">The base registry key.</param>
24     /// <param name="subKey">The subkey</param>
25     /// <returns>An enumeration of strings.</returns>
GetRegistrySubKeyNames(RegistryKey baseKey, string subKey)26     internal delegate IEnumerable<string> GetRegistrySubKeyNames(RegistryKey baseKey, string subKey);
27 
28     /// <summary>
29     /// Simplified registry access delegate. Given a baseKey and subKey, get the default value
30     /// of the subKey.
31     /// </summary>
32     /// <param name="baseKey">The base registry key.</param>
33     /// <param name="subKey">The subkey</param>
34     /// <returns>A string containing the default value.</returns>
GetRegistrySubKeyDefaultValue(RegistryKey baseKey, string subKey)35     internal delegate string GetRegistrySubKeyDefaultValue(RegistryKey baseKey, string subKey);
36 }
37 #endif
38