]> git.proxmox.com Git - mirror_edk2.git/blame - EdkCompatibilityPkg/Foundation/Framework/Protocol/SectionExtraction/SectionExtraction.h
Update the copyright notice format
[mirror_edk2.git] / EdkCompatibilityPkg / Foundation / Framework / Protocol / SectionExtraction / SectionExtraction.h
CommitLineData
3eb9473e 1/*++\r
2\r
f57387d5
HT
3Copyright (c) 2004, Intel Corporation. All rights reserved.<BR>\r
4This program and the accompanying materials \r
3eb9473e 5are licensed and made available under the terms and conditions of the BSD License \r
6which accompanies this distribution. The full text of the license may be found at \r
7http://opensource.org/licenses/bsd-license.php \r
8 \r
9THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r
10WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. \r
11\r
12Module Name:\r
13\r
14 SectionExtraction.h\r
15\r
16Abstract:\r
17\r
18 Section extraction protocol as defined in the Tiano File Image Format specification.\r
19\r
20 This interface provides a means of decoding a set of sections into a linked list of\r
21 leaf sections. This provides for an extensible and flexible file format.\r
22\r
23--*/\r
24\r
25#ifndef _SECTION_EXTRACTION_PROTOCOL_H\r
26#define _SECTION_EXTRACTION_PROTOCOL_H\r
27\r
28#include "EfiFirmwareFileSystem.h"\r
29\r
30//\r
31// Protocol GUID definition\r
32//\r
33#define EFI_SECTION_EXTRACTION_PROTOCOL_GUID \\r
34 { \\r
7ccf38a3 35 0x448F5DA4, 0x6DD7, 0x4FE1, {0x93, 0x07, 0x69, 0x22, 0x41, 0x92, 0x21, 0x5D} \\r
3eb9473e 36 }\r
37\r
38EFI_FORWARD_DECLARATION (EFI_SECTION_EXTRACTION_PROTOCOL);\r
39\r
40//\r
41// Protocol member functions\r
42//\r
43typedef\r
44EFI_STATUS\r
45(EFIAPI *EFI_OPEN_SECTION_STREAM) (\r
46 IN EFI_SECTION_EXTRACTION_PROTOCOL * This,\r
47 IN UINTN SectionStreamLength,\r
48 IN VOID *SectionStream,\r
49 OUT UINTN *SectionStreamHandle\r
50 );\r
51\r
52typedef\r
53EFI_STATUS\r
54(EFIAPI *EFI_GET_SECTION) (\r
55 IN EFI_SECTION_EXTRACTION_PROTOCOL * This,\r
56 IN UINTN SectionStreamHandle,\r
57 IN EFI_SECTION_TYPE * SectionType,\r
58 IN EFI_GUID * SectionDefinitionGuid,\r
59 IN UINTN SectionInstance,\r
60 IN VOID **Buffer,\r
61 IN OUT UINTN *BufferSize,\r
62 OUT UINT32 *AuthenticationStatus\r
63 );\r
64\r
65typedef\r
66EFI_STATUS\r
67(EFIAPI *EFI_CLOSE_SECTION_STREAM) (\r
68 IN EFI_SECTION_EXTRACTION_PROTOCOL * This,\r
69 IN UINTN SectionStreamHandle\r
70 );\r
71\r
72//\r
73// Protocol definition\r
74//\r
5d46191d 75struct _EFI_SECTION_EXTRACTION_PROTOCOL {\r
3eb9473e 76 EFI_OPEN_SECTION_STREAM OpenSectionStream;\r
77 EFI_GET_SECTION GetSection;\r
78 EFI_CLOSE_SECTION_STREAM CloseSectionStream;\r
5d46191d 79};\r
3eb9473e 80\r
81extern EFI_GUID gEfiSectionExtractionProtocolGuid;\r
82\r
83#endif\r