Every EFI driver and application is passed an image handle when it is loaded.\r
This image handle will contain a Loaded Image Protocol.\r
\r
- Copyright (c) 2006 - 2008, Intel Corporation \r
- All rights reserved. This program and the accompanying materials \r
- are licensed and made available under the terms and conditions of the BSD License \r
- which accompanies this distribution. The full text of the license may be found at \r
- http://opensource.org/licenses/bsd-license.php \r
+ Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>\r
+ This program and the accompanying materials\r
+ are licensed and made available under the terms and conditions of the BSD License\r
+ which accompanies this distribution. The full text of the license may be found at\r
+ http://opensource.org/licenses/bsd-license.php\r
\r
- THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r
- WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. \r
+ THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
+ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
\r
**/\r
\r
#ifndef __LOADED_IMAGE_PROTOCOL_H__\r
#define __LOADED_IMAGE_PROTOCOL_H__\r
\r
-#include <Protocol/DevicePath.h>\r
-\r
#define EFI_LOADED_IMAGE_PROTOCOL_GUID \\r
{ \\r
0x5B1B31A1, 0x9562, 0x11d2, {0x8E, 0x3F, 0x00, 0xA0, 0xC9, 0x69, 0x72, 0x3B } \\r
\r
///\r
/// Protocol GUID defined in EFI1.1.\r
-/// \r
+///\r
#define LOADED_IMAGE_PROTOCOL EFI_LOADED_IMAGE_PROTOCOL_GUID\r
\r
///\r
\r
///\r
/// Revision defined in EFI1.1.\r
-/// \r
+///\r
#define EFI_LOADED_IMAGE_INFORMATION_REVISION EFI_LOADED_IMAGE_PROTOCOL_REVISION\r
\r
-/** \r
- @par Protocol Description:\r
- Can be used on any image handle to obtain information about the loaded image.\r
-\r
- @param Revision\r
- Defines the revision of the EFI_LOADED_IMAGE_PROTOCOL structure. \r
- All future revisions will be backward compatible to the current revision.\r
-\r
- @param ParentHandle\r
- Parent image's image handle. NULL if the image is loaded directly from \r
- the firmware's boot manager. \r
-\r
- @param SystemTable\r
- The image's EFI system table pointer. \r
-\r
- @param DeviceHandle\r
- The device handle that the EFI Image was loaded from. \r
-\r
- @param FilePath\r
- A pointer to the file path portion specific to DeviceHandle \r
- that the EFI Image was loaded from. \r
-\r
- @param Reserved\r
- Reserved. DO NOT USE.\r
-\r
- @param LoadOptionsSize\r
- The size in bytes of LoadOptions.\r
-\r
- @param LoadOptions\r
- A pointer to the image's binary load options.\r
-\r
- @param ImageBase\r
- The base address at which the image was loaded.\r
-\r
- @param ImageSize\r
- The size in bytes of the loaded image.\r
-\r
- @param ImageCodeType\r
- The memory \r
-\r
- @param ImageDataType\r
- The memory \r
-\r
- @param Unload\r
- Function that unloads the image. \r
-\r
-**/\r
+///\r
+/// Can be used on any image handle to obtain information about the loaded image.\r
+///\r
typedef struct {\r
- UINT32 Revision;\r
- EFI_HANDLE ParentHandle;\r
- EFI_SYSTEM_TABLE *SystemTable;\r
+ UINT32 Revision; ///< Defines the revision of the EFI_LOADED_IMAGE_PROTOCOL structure.\r
+ ///< All future revisions will be backward compatible to the current revision.\r
+ EFI_HANDLE ParentHandle; ///< Parent image's image handle. NULL if the image is loaded directly from\r
+ ///< the firmware's boot manager.\r
+ EFI_SYSTEM_TABLE *SystemTable; ///< the image's EFI system table pointer.\r
\r
//\r
// Source location of image\r
//\r
- EFI_HANDLE DeviceHandle;\r
- EFI_DEVICE_PATH_PROTOCOL *FilePath;\r
- VOID *Reserved;\r
+ EFI_HANDLE DeviceHandle; ///< The device handle that the EFI Image was loaded from.\r
+ EFI_DEVICE_PATH_PROTOCOL *FilePath; ///< A pointer to the file path portion specific to DeviceHandle\r
+ ///< that the EFI Image was loaded from.\r
+ VOID *Reserved; ///< Reserved. DO NOT USE.\r
\r
//\r
// Images load options\r
//\r
- UINT32 LoadOptionsSize;\r
- VOID *LoadOptions;\r
+ UINT32 LoadOptionsSize;///< The size in bytes of LoadOptions.\r
+ VOID *LoadOptions; ///< A pointer to the image's binary load options.\r
\r
//\r
// Location of where image was loaded\r
//\r
- VOID *ImageBase;\r
- UINT64 ImageSize;\r
- EFI_MEMORY_TYPE ImageCodeType;\r
- EFI_MEMORY_TYPE ImageDataType;\r
-\r
- //\r
- // If the driver image supports a dynamic unload request\r
- //\r
- EFI_IMAGE_UNLOAD Unload;\r
-\r
+ VOID *ImageBase; ///< The base address at which the image was loaded.\r
+ UINT64 ImageSize; ///< The size in bytes of the loaded image.\r
+ EFI_MEMORY_TYPE ImageCodeType; ///< The memory type that the code sections were loaded as.\r
+ EFI_MEMORY_TYPE ImageDataType; ///< The memory type that the data sections were loaded as.\r
+ EFI_IMAGE_UNLOAD Unload;\r
} EFI_LOADED_IMAGE_PROTOCOL;\r
\r
//\r
// For backward-compatible with EFI1.1.\r
-// \r
+//\r
typedef EFI_LOADED_IMAGE_PROTOCOL EFI_LOADED_IMAGE;\r
\r
extern EFI_GUID gEfiLoadedImageProtocolGuid;\r