1 /** @file
2   header file for NULL named library for level 3 shell command functions.
3 
4   Copyright (c) 2009 - 2011, 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 _UEFI_SHELL_LEVEL3_COMMANDS_LIB_H_
16 #define _UEFI_SHELL_LEVEL3_COMMANDS_LIB_H_
17 
18 #include <Uefi.h>
19 #include <ShellBase.h>
20 
21 #include <Guid/ShellLibHiiGuid.h>
22 
23 #include <Protocol/EfiShell.h>
24 #include <Protocol/EfiShellParameters.h>
25 #include <Protocol/DevicePath.h>
26 #include <Protocol/LoadedImage.h>
27 #include <Protocol/UnicodeCollation.h>
28 
29 #include <Library/BaseLib.h>
30 #include <Library/BaseMemoryLib.h>
31 #include <Library/DebugLib.h>
32 #include <Library/MemoryAllocationLib.h>
33 #include <Library/PcdLib.h>
34 #include <Library/ShellCommandLib.h>
35 #include <Library/ShellLib.h>
36 #include <Library/UefiLib.h>
37 #include <Library/UefiRuntimeServicesTableLib.h>
38 #include <Library/UefiBootServicesTableLib.h>
39 #include <Library/HiiLib.h>
40 #include <Library/FileHandleLib.h>
41 
42 extern EFI_HANDLE gShellLevel3HiiHandle;
43 
44 /**
45   Function for 'type' command.
46 
47   @param[in] ImageHandle  Handle to the Image (NULL if Internal).
48   @param[in] SystemTable  Pointer to the System Table (NULL if Internal).
49 **/
50 SHELL_STATUS
51 EFIAPI
52 ShellCommandRunType (
53   IN EFI_HANDLE        ImageHandle,
54   IN EFI_SYSTEM_TABLE  *SystemTable
55   );
56 
57 /**
58   Function for 'touch' command.
59 
60   @param[in] ImageHandle  Handle to the Image (NULL if Internal).
61   @param[in] SystemTable  Pointer to the System Table (NULL if Internal).
62 **/
63 SHELL_STATUS
64 EFIAPI
65 ShellCommandRunTouch (
66   IN EFI_HANDLE        ImageHandle,
67   IN EFI_SYSTEM_TABLE  *SystemTable
68   );
69 
70 /**
71   Function for 'ver' command.
72 
73   @param[in] ImageHandle  Handle to the Image (NULL if Internal).
74   @param[in] SystemTable  Pointer to the System Table (NULL if Internal).
75 **/
76 SHELL_STATUS
77 EFIAPI
78 ShellCommandRunVer (
79   IN EFI_HANDLE        ImageHandle,
80   IN EFI_SYSTEM_TABLE  *SystemTable
81   );
82 
83 /**
84   Function for 'alias' command.
85 
86   @param[in] ImageHandle  Handle to the Image (NULL if Internal).
87   @param[in] SystemTable  Pointer to the System Table (NULL if Internal).
88 **/
89 SHELL_STATUS
90 EFIAPI
91 ShellCommandRunAlias (
92   IN EFI_HANDLE        ImageHandle,
93   IN EFI_SYSTEM_TABLE  *SystemTable
94   );
95 
96 /**
97   Function for 'cls' command.
98 
99   @param[in] ImageHandle  Handle to the Image (NULL if Internal).
100   @param[in] SystemTable  Pointer to the System Table (NULL if Internal).
101 **/
102 SHELL_STATUS
103 EFIAPI
104 ShellCommandRunCls (
105   IN EFI_HANDLE        ImageHandle,
106   IN EFI_SYSTEM_TABLE  *SystemTable
107   );
108 
109 /**
110   Function for 'echo' command.
111 
112   @param[in] ImageHandle  Handle to the Image (NULL if Internal).
113   @param[in] SystemTable  Pointer to the System Table (NULL if Internal).
114 **/
115 SHELL_STATUS
116 EFIAPI
117 ShellCommandRunEcho (
118   IN EFI_HANDLE        ImageHandle,
119   IN EFI_SYSTEM_TABLE  *SystemTable
120   );
121 
122 /**
123   Function for 'pause' command.
124 
125   @param[in] ImageHandle  Handle to the Image (NULL if Internal).
126   @param[in] SystemTable  Pointer to the System Table (NULL if Internal).
127 **/
128 SHELL_STATUS
129 EFIAPI
130 ShellCommandRunPause (
131   IN EFI_HANDLE        ImageHandle,
132   IN EFI_SYSTEM_TABLE  *SystemTable
133   );
134 
135 /**
136   Function for 'getmtc' command.
137 
138   @param[in] ImageHandle  Handle to the Image (NULL if Internal).
139   @param[in] SystemTable  Pointer to the System Table (NULL if Internal).
140 **/
141 SHELL_STATUS
142 EFIAPI
143 ShellCommandRunGetMtc (
144   IN EFI_HANDLE        ImageHandle,
145   IN EFI_SYSTEM_TABLE  *SystemTable
146   );
147 
148 /**
149   Function for 'help' command.
150 
151   @param[in] ImageHandle  Handle to the Image (NULL if Internal).
152   @param[in] SystemTable  Pointer to the System Table (NULL if Internal).
153 **/
154 SHELL_STATUS
155 EFIAPI
156 ShellCommandRunHelp (
157   IN EFI_HANDLE        ImageHandle,
158   IN EFI_SYSTEM_TABLE  *SystemTable
159   );
160 
161 #endif
162 
163