]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdePkg/Include/Protocol/HiiConfigRouting.h
Fix doxygen issue:
[mirror_edk2.git] / MdePkg / Include / Protocol / HiiConfigRouting.h
index 80a9452c0f90cbfe975378c639388464610507fd..34de9c57b53d316045a85f310fee529a16002743 100644 (file)
@@ -108,9 +108,9 @@ typedef struct _EFI_HII_CONFIG_ROUTING_PROTOCOL EFI_HII_CONFIG_ROUTING_PROTOCOL;
 **/\r
 typedef\r
 EFI_STATUS\r
-(EFIAPI * EFI_HII_ROUTING_EXTRACT_CONFIG ) (\r
+(EFIAPI * EFI_HII_ROUTING_EXTRACT_CONFIG)(\r
   IN CONST  EFI_HII_CONFIG_ROUTING_PROTOCOL *This,\r
-  IN CONST  EFI_STRING                      *Request,\r
+  IN CONST  EFI_STRING                      Request,\r
   OUT       EFI_STRING                      *Progress,\r
   OUT       EFI_STRING                      *Results\r
 );\r
@@ -153,7 +153,7 @@ EFI_STATUS
 **/\r
 typedef\r
 EFI_STATUS\r
-(EFIAPI * EFI_HII_ROUTING_EXPORT_CONFIG ) (\r
+(EFIAPI * EFI_HII_ROUTING_EXPORT_CONFIG)(\r
   IN CONST  EFI_HII_CONFIG_ROUTING_PROTOCOL *This,\r
   OUT       EFI_STRING                      *Results\r
 );\r
@@ -201,7 +201,7 @@ EFI_STATUS
 **/\r
 typedef\r
 EFI_STATUS\r
-(EFIAPI * EFI_HII_ROUTING_ROUTE_CONFIG ) (\r
+(EFIAPI * EFI_HII_ROUTING_ROUTE_CONFIG)(\r
   IN CONST  EFI_HII_CONFIG_ROUTING_PROTOCOL *This,\r
   IN CONST  EFI_STRING                      Configuration,\r
   OUT       EFI_STRING                      *Progress\r
@@ -271,12 +271,12 @@ EFI_STATUS
 **/\r
 typedef\r
 EFI_STATUS\r
-(EFIAPI * EFI_HII_ROUTING_BLOCK_TO_CONFIG ) (\r
+(EFIAPI * EFI_HII_ROUTING_BLOCK_TO_CONFIG)(\r
   IN CONST  EFI_HII_CONFIG_ROUTING_PROTOCOL *This,\r
   IN CONST  EFI_STRING                      ConfigRequest,\r
   IN CONST  UINT8                           *Block,\r
   IN CONST  UINTN                           BlockSize,\r
-  OUT       EFI_STRING                      **Config,\r
+  OUT       EFI_STRING                      *Config,\r
   OUT       EFI_STRING                      *Progress\r
 );\r
 \r
@@ -330,14 +330,64 @@ EFI_STATUS
 **/\r
 typedef\r
 EFI_STATUS\r
-(EFIAPI * EFI_HII_ROUTING_CONFIG_TO_BLOCK ) (\r
+(EFIAPI * EFI_HII_ROUTING_CONFIG_TO_BLOCK)(\r
   IN CONST  EFI_HII_CONFIG_ROUTING_PROTOCOL *This,\r
-  IN CONST  EFI_STRING                      *ConfigResp,\r
-  IN CONST  UINT8                           *Block,\r
+  IN CONST  EFI_STRING                      ConfigResp,\r
+  IN OUT    UINT8                           *Block,\r
   IN OUT    UINTN                           *BlockSize,\r
   OUT       EFI_STRING                      *Progress\r
 );\r
 \r
+typedef\r
+EFI_STATUS \r
+(EFIAPI * EFI_HII_GET_ALT_CFG)(\r
+  IN  CONST EFI_HII_CONFIG_ROUTING_PROTOCOL    *This, \r
+  IN  CONST EFI_STRING                         Configuration, \r
+  IN  CONST EFI_GUID                           *Guid, \r
+  IN  CONST EFI_STRING                         Name, \r
+  IN  CONST EFI_DEVICE_PATH_PROTOCOL           *DevicePath,  \r
+  IN  CONST UINT16                             *AltCfgId,\r
+  OUT EFI_STRING                               *AltCfgResp \r
+  )\r
+/*++\r
+\r
+  Routine Description:\r
+    This helper function is to be called by drivers to extract portions of \r
+    a larger configuration string.\r
+    \r
+  Arguments:          \r
+    This                   - A pointer to the EFI_HII_CONFIG_ROUTING_PROTOCOL instance.    \r
+    Configuration          - A null-terminated Unicode string in <MultiConfigAltResp> format.\r
+    Guid                   - A pointer to the GUID value to search for in the \r
+                             routing portion of the ConfigResp string when retrieving \r
+                             the requested data. If Guid is NULL, then all GUID \r
+                             values will be searched for.\r
+    Name                   - A pointer to the NAME value to search for in the \r
+                             routing portion of the ConfigResp string when retrieving \r
+                             the requested data. If Name is NULL, then all Name \r
+                             values will be searched for.                         \r
+    DevicePath             - A pointer to the PATH value to search for in the \r
+                             routing portion of the ConfigResp string when retrieving \r
+                             the requested data. If DevicePath is NULL, then all \r
+                             DevicePath values will be searched for.             \r
+    AltCfgId               - A pointer to the ALTCFG value to search for in the \r
+                             routing portion of the ConfigResp string when retrieving \r
+                             the requested data.  If this parameter is NULL, \r
+                             then the current setting will be retrieved.\r
+    AltCfgResp             - A pointer to a buffer which will be allocated by the \r
+                             function which contains the retrieved string as requested.  \r
+                             This buffer is only allocated if the call was successful. \r
+    \r
+  Returns:              \r
+    EFI_SUCCESS            - The request succeeded. The requested data was extracted \r
+                             and placed in the newly allocated AltCfgResp buffer.\r
+    EFI_OUT_OF_RESOURCES   - Not enough memory to allocate AltCfgResp.    \r
+    EFI_INVALID_PARAMETER  - Any parameter is invalid.\r
+    EFI_NOT_FOUND          - Target for the specified routing data was not found.\r
+                             \r
+--*/        \r
+;\r
+\r
 \r
 /**\r
    \r
@@ -352,6 +402,7 @@ struct _EFI_HII_CONFIG_ROUTING_PROTOCOL {
   EFI_HII_ROUTING_ROUTE_CONFIG    RouteConfig;\r
   EFI_HII_ROUTING_BLOCK_TO_CONFIG BlockToConfig;\r
   EFI_HII_ROUTING_CONFIG_TO_BLOCK ConfigToBlock;\r
+  EFI_HII_GET_ALT_CFG             GetAltConfig;\r
 };\r
 \r
 extern EFI_GUID gEfiHiiConfigRoutingProtocolGuid;\r