]> git.proxmox.com Git - mirror_edk2.git/blob - ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/SmbiosView.h
ShellPkg/UefiShellDebug1CommandsLib: Remove unnecessary EFIAPI
[mirror_edk2.git] / ShellPkg / Library / UefiShellDebug1CommandsLib / SmbiosView / SmbiosView.h
1 /** @file
2 Tools of clarify the content of the smbios table.
3
4 Copyright (c) 2005 - 2015, Intel Corporation. All rights reserved.<BR>
5 This program and the accompanying materials
6 are licensed and made available under the terms and conditions of the BSD License
7 which accompanies this distribution. The full text of the license may be found at
8 http://opensource.org/licenses/bsd-license.php
9
10 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
11 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
12
13 **/
14
15 #ifndef _SMBIOS_VIEW_H_
16 #define _SMBIOS_VIEW_H_
17
18 #define STRUCTURE_TYPE_RANDOM (UINT8) 0xFE
19 #define STRUCTURE_TYPE_INVALID (UINT8) 0xFF
20
21 typedef struct {
22 UINT16 Index;
23 UINT8 Type;
24 UINT16 Handle;
25 UINT16 Addr; // offset from table head
26 UINT16 Length; // total structure length
27 } STRUCTURE_STATISTICS;
28
29 /**
30 Query all structures Data from SMBIOS table and Display
31 the information to users as required display option.
32
33 @param[in] QueryType Structure type to view.
34 @param[in] QueryHandle Structure handle to view.
35 @param[in] Option Display option: none,outline,normal,detail.
36 @param[in] RandomView Support for -h parameter.
37
38 @retval EFI_SUCCESS print is successful.
39 @retval EFI_BAD_BUFFER_SIZE structure is out of the range of SMBIOS table.
40 **/
41 EFI_STATUS
42 SMBiosView (
43 IN UINT8 QueryType,
44 IN UINT16 QueryHandle,
45 IN UINT8 Option,
46 IN BOOLEAN RandomView
47 );
48
49 /**
50 Query all structures Data from SMBIOS table and Display
51 the information to users as required display option.
52
53 @param[in] QueryType Structure type to view.
54 @param[in] QueryHandle Structure handle to view.
55 @param[in] Option Display option: none,outline,normal,detail.
56 @param[in] RandomView Support for -h parameter.
57
58 @retval EFI_SUCCESS print is successful.
59 @retval EFI_BAD_BUFFER_SIZE structure is out of the range of SMBIOS table.
60 **/
61 EFI_STATUS
62 SMBios64View (
63 IN UINT8 QueryType,
64 IN UINT16 QueryHandle,
65 IN UINT8 Option,
66 IN BOOLEAN RandomView
67 );
68
69 /**
70 Function to initialize the global mStatisticsTable object.
71
72 @retval EFI_SUCCESS print is successful.
73 **/
74 EFI_STATUS
75 InitSmbiosTableStatistics (
76 VOID
77 );
78
79 /**
80 Function to initialize the global mSmbios64BitStatisticsTable object.
81
82 @retval EFI_SUCCESS print is successful.
83 **/
84 EFI_STATUS
85 InitSmbios64BitTableStatistics (
86 VOID
87 );
88
89 /**
90 Function to display the global mStatisticsTable object.
91
92 @param[in] Option ECHO, NORMAL, or DETAIL control the amount of detail displayed.
93
94 @retval EFI_SUCCESS print is successful.
95 **/
96 EFI_STATUS
97 DisplayStatisticsTable (
98 IN UINT8 Option
99 );
100
101 /**
102 Function to display the global mSmbios64BitStatisticsTable object.
103
104 @param[in] Option ECHO, NORMAL, or DETAIL control the amount of detail displayed.
105
106 @retval EFI_SUCCESS print is successful.
107 **/
108 EFI_STATUS
109 DisplaySmbios64BitStatisticsTable (
110 IN UINT8 Option
111 );
112
113 /**
114 function to return a string of the detail level.
115
116 @param[in] ShowType The detail level whose name is desired in clear text.
117
118 @return A pointer to a string representing the ShowType (or 'undefined type' if not known).
119 **/
120 CHAR16*
121 GetShowTypeString (
122 UINT8 ShowType
123 );
124
125 extern UINT8 gShowType;
126
127 extern UINTN mSmbios64BitTableLength;
128
129 #endif