]> git.proxmox.com Git - mirror_edk2.git/blob - ShellPkg/Application/Shell/FileHandleInternal.h
ShellPkg/Shell: eliminate double-free in RunSplitCommand()
[mirror_edk2.git] / ShellPkg / Application / Shell / FileHandleInternal.h
1 /** @file
2 internal worker functions for FileHandleWrappers to use
3
4 Copyright (c) 2009 - 2010, 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 _FILE_HANDLE_INTERNAL_HEADER_
16 #define _FILE_HANDLE_INTERNAL_HEADER_
17
18 /**
19 Move the cursor position one character backward.
20
21 @param[in] LineLength Length of a line. Get it by calling QueryMode
22 @param[in, out] Column Current column of the cursor position
23 @param[in, out] Row Current row of the cursor position
24 **/
25 VOID
26 MoveCursorBackward (
27 IN UINTN LineLength,
28 IN OUT UINTN *Column,
29 IN OUT UINTN *Row
30 );
31
32 /**
33 Move the cursor position one character forward.
34
35 @param[in] LineLength Length of a line.
36 @param[in] TotalRow Total row of a screen
37 @param[in, out] Column Current column of the cursor position
38 @param[in, out] Row Current row of the cursor position
39 **/
40 VOID
41 MoveCursorForward (
42 IN UINTN LineLength,
43 IN UINTN TotalRow,
44 IN OUT UINTN *Column,
45 IN OUT UINTN *Row
46 );
47
48 /**
49 Prints out each previously typed command in the command list history log.
50
51 When each screen is full it will pause for a key before continuing.
52
53 @param[in] TotalCols How many columns are on the screen
54 @param[in] TotalRows How many rows are on the screen
55 @param[in] StartColumn which column to start at
56 **/
57 VOID
58 PrintCommandHistory (
59 IN CONST UINTN TotalCols,
60 IN CONST UINTN TotalRows,
61 IN CONST UINTN StartColumn
62 );
63
64 #endif //_FILE_HANDLE_INTERNAL_HEADER_
65