blob: 6136786312a045fba701de97a3af8a5f692dc418 [file] [log] [blame]
Vishal Bhoj82c80712015-12-15 21:13:33 +05301/** @file
2 Provides services to perform additional actions when a PE/COFF image is loaded
3 or unloaded. This is useful for environment where symbols need to be loaded
4 and unloaded to support source level debugging.
5
6 Copyright (c) 2009, Intel Corporation. All rights reserved.<BR>
7 This program and the accompanying materials
8 are licensed and made available under the terms and conditions of the BSD License
9 which accompanies this distribution. The full text of the license may be found at
10 http://opensource.org/licenses/bsd-license.php
11
12 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
13 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
14
15**/
16
17#ifndef __PE_COFF_EXTRA_ACTION_LIB_H__
18#define __PE_COFF_EXTRA_ACTION_LIB_H__
19
20#include <Library/PeCoffLib.h>
21
22/**
23 Performs additional actions after a PE/COFF image has been loaded and relocated.
24
25 If ImageContext is NULL, then ASSERT().
26
27 @param ImageContext Pointer to the image context structure that describes the
28 PE/COFF image that has already been loaded and relocated.
29
30**/
31VOID
32EFIAPI
33PeCoffLoaderRelocateImageExtraAction (
34 IN OUT PE_COFF_LOADER_IMAGE_CONTEXT *ImageContext
35 );
36
37/**
38 Performs additional actions just before a PE/COFF image is unloaded. Any resources
39 that were allocated by PeCoffLoaderRelocateImageExtraAction() must be freed.
40
41 If ImageContext is NULL, then ASSERT().
42
43 @param ImageContext Pointer to the image context structure that describes the
44 PE/COFF image that is being unloaded.
45
46**/
47VOID
48EFIAPI
49PeCoffLoaderUnloadImageExtraAction (
50 IN OUT PE_COFF_LOADER_IMAGE_CONTEXT *ImageContext
51 );
52
53#endif