blob: 97599d9a47838c0a2eff817e62398f4f71352b04 [file] [log] [blame]
Ronak Kanabar1ae366f2023-06-07 01:21:56 +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 - 2018, Intel Corporation. All rights reserved.<BR>
7 SPDX-License-Identifier: BSD-2-Clause-Patent
8
9**/
10
11#ifndef __PE_COFF_EXTRA_ACTION_LIB_H__
12#define __PE_COFF_EXTRA_ACTION_LIB_H__
13
14#include <Library/PeCoffLib.h>
15
16/**
17 Performs additional actions after a PE/COFF image has been loaded and relocated.
18
19 If ImageContext is NULL, then ASSERT().
20
21 @param ImageContext Pointer to the image context structure that describes the
22 PE/COFF image that has already been loaded and relocated.
23
24**/
25VOID
26EFIAPI
27PeCoffLoaderRelocateImageExtraAction (
28 IN OUT PE_COFF_LOADER_IMAGE_CONTEXT *ImageContext
29 );
30
31/**
32 Performs additional actions just before a PE/COFF image is unloaded. Any resources
33 that were allocated by PeCoffLoaderRelocateImageExtraAction() must be freed.
34
35 If ImageContext is NULL, then ASSERT().
36
37 @param ImageContext Pointer to the image context structure that describes the
38 PE/COFF image that is being unloaded.
39
40**/
41VOID
42EFIAPI
43PeCoffLoaderUnloadImageExtraAction (
44 IN OUT PE_COFF_LOADER_IMAGE_CONTEXT *ImageContext
45 );
46
47#endif