VirtualBox

source: vbox/trunk/src/VBox/Devices/EFI/Firmware/StdLibPrivateInternalFiles/Include/Device/Console.h@ 58466

Last change on this file since 58466 was 58459, checked in by vboxsync, 10 years ago

EFI/Firmware: 'svn merge /vendor/edk2/UDK2010.SR1 /vendor/edk2/current .', reverting and removing files+dirs listed in ReadMe.vbox, resolving conflicts with help from ../UDK2014.SP1/. This is a raw untested merge.

  • Property svn:eol-style set to native
File size: 2.1 KB
Line 
1/** @file
2 Declarations and macros for the console abstraction.
3
4 Copyright (c) 2010 - 2012, Intel Corporation. All rights reserved.<BR>
5 This program and the accompanying materials are licensed and made available
6 under the terms and conditions of the BSD License which accompanies this
7 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 Depends on <kfile.h>, <Device/Device.h>, <Protocol/SimpleTextIn.h>, <Uefi/UefiBaseType.h>
14**/
15#ifndef _DEVICE_UEFI_CONSOLE_H
16#define _DEVICE_UEFI_CONSOLE_H
17
18#include <kfile.h>
19#include <Device/Device.h>
20
21/* The members Cookie through Abstraction, inclusive, are the same type and order
22 for all instance structures.
23
24 All instance structures must be a multiple of sizeof(UINTN) bytes long
25*/
26typedef struct {
27 UINT32 Cookie; ///< Special value identifying this as a valid ConInstance
28 UINT32 InstanceNum; ///< Which instance is this? Zero-based.
29 EFI_HANDLE Dev; ///< Pointer to either Input or Output Protocol.
30 DeviceNode *Parent; ///< Points to the parent Device Node.
31 struct fileops Abstraction; ///< Pointers to functions implementing this device's abstraction.
32 UINTN Reserved_1; // Ensure that next member starts on an 8-byte boundary
33 UINT64 NumRead; ///< Number of characters Read.
34 UINT64 NumWritten; ///< Number of characters Written.
35 EFI_INPUT_KEY UnGetKey; ///< One-key pushback, for poll().
36 __mbstate_t CharState; ///< Character state for the byte stream passing through this device
37} ConInstance;
38
39__BEGIN_DECLS
40
41int
42EFIAPI
43da_ConOpen(
44 IN DeviceNode *DevNode,
45 IN struct __filedes *filp,
46 IN int DevInstance,
47 IN CHAR16 *Path,
48 IN CHAR16 *MPath
49);
50
51__END_DECLS
52
53#endif /* _DEVICE_UEFI_CONSOLE_H */
Note: See TracBrowser for help on using the repository browser.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette