IN CONST EFI_STRING Request OPTIONAL\r
);\r
\r
-/**\r
- Allocates and returns a Null-terminated Unicode <ConfigAltResp> string.\r
-\r
- If Guid is NULL, then ASSERT().\r
- If Name is NULL, then ASSERT().\r
- If BlockNameArray is NULL, then ASSERT().\r
-\r
- @param[in] Guid GUID of the buffer storage.\r
- @param[in] Name Name of the buffer storage.\r
- @param[in] DriverHandle The DriverHandle that support a Device Path\r
- Protocol. \r
- @param[in] BufferStorage Content of the buffer storage.\r
- @param[in] BufferStorageSize Length in bytes of the buffer storage.\r
- @param[in] BlockNameArray Array generated by VFR compiler. This array\r
- contains a UINT32 value that is the length\r
- of BlockNameArray in bytes, followed by pairs\r
- of 16-bit values that are the offset and length\r
- values used to contruct a <ConfigRequest> string.\r
- @param[in] ... A variable argument list that contains pairs of 16-bit\r
- ALTCFG identifiers and pointers to DefaultValueArrays.\r
- The variable argument list is terminated by a NULL \r
- DefaultValueArray pointer. A DefaultValueArray \r
- contains a UINT32 value that is the length, in bytes,\r
- of the DefaultValueArray. The UINT32 length value \r
- is followed by a series of records that contain\r
- a 16-bit WIDTH value followed by a byte array with \r
- WIDTH entries. The records must be parsed from\r
- beginning to end until the UINT32 length limit\r
- is reached. \r
-\r
- @retval NULL There are not enough resources to process the request.\r
- @retval NULL A <ConfigResp> could not be retrieved from the Config \r
- Routing Protocol.\r
- @retval Other A pointer to the Null-terminate Unicode <ConfigAltResp>\r
- string.\r
-\r
-**/\r
-EFI_STRING\r
-EFIAPI\r
-HiiConstructConfigAltResp (\r
- IN CONST EFI_GUID *Guid,\r
- IN CONST CHAR16 *Name,\r
- IN EFI_HANDLE DriverHandle,\r
- IN CONST VOID *BufferStorage,\r
- IN UINTN BufferStorageSize,\r
- IN CONST VOID *BlockNameArray, \r
- ...\r
- );\r
-\r
/**\r
Determines if the routing data specified by GUID and NAME match a <ConfigHdr>.\r
\r
IN VOID *EndOpcodeHandle OPTIONAL\r
);\r
\r
-/**\r
- Configure the buffer accrording to ConfigBody strings in the format of\r
- <Length:4 bytes>, <Offset: 2 bytes>, <Width:2 bytes>, <Data:n bytes>.\r
- This ConfigBody strings is generated by EDKII UEFI VfrCompiler for the default\r
- values in a Form Set. The name of the ConfigBody strings is VfrMyIfrNVDataDefault0000\r
- constructed following this rule: \r
- "Vfr" + varstore.name + "Default" + defaultstore.attributes.\r
- Check the generated C file in Output for details.\r
-\r
- @param Buffer the start address of buffer.\r
- @param BufferSize the size of buffer.\r
- @param Number the number of the ConfigBody strings.\r
- @param ... the ConfigBody strings\r
-\r
- @retval EFI_BUFFER_TOO_SMALL the BufferSize is too small to operate.\r
- @retval EFI_INVALID_PARAMETER Buffer is NULL or BufferSize is 0.\r
- @retval EFI_SUCCESS Operation successful.\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-HiiIfrLibExtractDefault(\r
- IN VOID *Buffer,\r
- IN UINTN *BufferSize,\r
- UINTN Number,\r
- ...\r
- );\r
-\r
#endif\r