]> git.proxmox.com Git - mirror_edk2.git/blob - EdkCompatibilityPkg/Sample/Platform/Nt32/Ppi/NtLoadAsDll/NtLoadAsDll.h
Update the copyright notice format
[mirror_edk2.git] / EdkCompatibilityPkg / Sample / Platform / Nt32 / Ppi / NtLoadAsDll / NtLoadAsDll.h
1 /*++
2
3 Copyright (c) 2004 - 2008, Intel Corporation. All rights reserved.<BR>
4 This program and the accompanying materials
5 are licensed and made available under the terms and conditions of the BSD License
6 which accompanies this distribution. The full text of the license may be found at
7 http://opensource.org/licenses/bsd-license.php
8
9 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
10 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
11
12 Module Name:
13
14 NtLoadAsDll.h
15
16 Abstract:
17
18 Nt service Ppi that is used to load PE32s in the NT emulation environment.
19
20 --*/
21
22 #ifndef _NT_LOAD_AS_DLL_H_
23 #define _NT_LOAD_AS_DLL_H_
24
25 #include "Tiano.h"
26
27 #define EFI_NT_LOAD_AS_DLL_PPI_GUID \
28 { \
29 0xccc53f6b, 0xa03a, 0x4ed8, {0x83, 0x9a, 0x3, 0xd9, 0x9c, 0x2, 0xb4, 0xe3} \
30 }
31
32 typedef
33 EFI_STATUS
34 (EFIAPI *EFI_NT_LOAD_AS_DLL) (
35 IN CHAR8 *PdbFileName,
36 IN VOID **ImageEntryPoint,
37 OUT VOID **ModHandle
38 );
39
40 /*++
41
42 Routine Description:
43 Loads the .DLL file is present when a PE/COFF file is loaded. This provides source level
44 debugging for drivers that have cooresponding .DLL files on the local system.
45
46 Arguments:
47 PdbFileName - The name of the .PDB file. This was found from the PE/COFF
48 file's debug directory entry.
49 ImageEntryPoint - A pointer to the DLL entry point of the .DLL file was loaded.
50
51 Returns:
52 EFI_SUCCESS - The .DLL file was loaded, and the DLL entry point is returned in ImageEntryPoint
53 EFI_NOT_FOUND - The .DLL file could not be found
54 EFI_UNSUPPORTED - The .DLL file was loaded, but the entry point to the .DLL file could not
55 determined.
56
57 --*/
58 typedef
59 EFI_STATUS
60 (EFIAPI *EFI_NT_FREE_LIBRARY) (
61 IN VOID *ModHandle
62 );
63
64 /*++
65
66 Routine Description:
67 Free resources allocated by Entry (). ModHandle was returned by
68 Entry ().
69
70 Arguments:
71 MohHandle - Handle of the resources to free to undo the work.
72
73 Returns:
74 EFI_SUCCESS -
75
76 --*/
77 typedef struct {
78 EFI_NT_LOAD_AS_DLL Entry;
79 EFI_NT_FREE_LIBRARY FreeLibrary;
80 } EFI_NT_LOAD_AS_DLL_PPI;
81
82 extern EFI_GUID gEfiNtLoadAsDllPpiGuid;
83
84 #endif