audk/ShellPkg/Library/UefiShellAcpiViewCommandLib/AcpiViewConfig.h

178 lines
3.6 KiB
C

/** @file
Header file for 'acpiview' configuration.
Copyright (c) 2016 - 2020, ARM Limited. All rights reserved.<BR>
SPDX-License-Identifier: BSD-2-Clause-Patent
**/
#ifndef ACPI_VIEW_CONFIG_H_
#define ACPI_VIEW_CONFIG_H_
/**
This function returns the colour highlighting status.
@retval TRUE Colour highlighting is enabled.
**/
BOOLEAN
EFIAPI
GetColourHighlighting (
VOID
);
/**
This function sets the colour highlighting status.
@param [in] Highlight The highlight status.
**/
VOID
EFIAPI
SetColourHighlighting (
BOOLEAN Highlight
);
/**
This function returns the consistency checking status.
@retval TRUE Consistency checking is enabled.
**/
BOOLEAN
EFIAPI
GetConsistencyChecking (
VOID
);
/**
This function sets the consistency checking status.
@param [in] ConsistencyChecking The consistency checking status.
**/
VOID
EFIAPI
SetConsistencyChecking (
BOOLEAN ConsistencyChecking
);
/**
This function returns the ACPI table requirements validation flag.
@retval TRUE Check for mandatory table presence should be performed.
**/
BOOLEAN
EFIAPI
GetMandatoryTableValidate (
VOID
);
/**
This function sets the ACPI table requirements validation flag.
@param [in] Validate Enable/Disable ACPI table requirements validation.
**/
VOID
EFIAPI
SetMandatoryTableValidate (
BOOLEAN Validate
);
/**
This function returns the identifier of specification to validate ACPI table
requirements against.
@return ID of specification listing mandatory tables.
**/
UINTN
EFIAPI
GetMandatoryTableSpec (
VOID
);
/**
This function sets the identifier of specification to validate ACPI table
requirements against.
@param [in] Spec ID of specification listing mandatory tables.
**/
VOID
EFIAPI
SetMandatoryTableSpec (
UINTN Spec
);
/**
The EREPORT_OPTION enum describes ACPI table Reporting options.
**/
typedef enum {
ReportAll, ///< Report All tables.
ReportSelected, ///< Report Selected table.
ReportTableList, ///< Report List of tables.
ReportDumpBinFile, ///< Dump selected table to a file.
ReportMax,
} EREPORT_OPTION;
/**
This function returns the report options.
@return The current report option.
**/
EREPORT_OPTION
EFIAPI
GetReportOption (
VOID
);
/**
This function sets the report options.
@param [in] ReportType The report option to set.
**/
VOID
EFIAPI
SetReportOption (
EREPORT_OPTION ReportType
);
/**
A structure holding the user selection detailing which
ACPI table is to be examined by the AcpiView code.
**/
typedef struct {
UINT32 Type; ///< 32bit signature of the selected ACPI table.
CONST CHAR16* Name; ///< User friendly name of the selected ACPI table.
BOOLEAN Found; ///< The selected table has been found in the system.
} SELECTED_ACPI_TABLE;
/**
This function returns the selected ACPI table.
@param [out] SelectedAcpiTable Pointer that will contain the returned struct.
**/
VOID
EFIAPI
GetSelectedAcpiTable (
OUT SELECTED_ACPI_TABLE** SelectedAcpiTable
);
/**
This function selects an ACPI table in current context.
The string name of the table is converted into UINT32
table signature.
@param [in] TableName The name of the ACPI table to select.
**/
VOID
EFIAPI
SelectAcpiTable (
CONST CHAR16* TableName
);
/**
Reset the AcpiView user configuration to defaults.
**/
VOID
EFIAPI
AcpiConfigSetDefaults (
VOID
);
#endif // ACPI_VIEW_CONFIG_H_