/** @file

  Root include file for Mde Package UEFI, UEFI_APPLICATION type modules.

  This is the include file for any module of type UEFI and UEFI_APPLICATION. Uefi modules only use
  types defined via this include file and can be ported easily to any
  environment.

Copyright (c) 2006 - 2007, Intel Corporation
All rights reserved. This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License
which accompanies this distribution.  The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php

THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.

**/

#ifndef __PI_UEFI_H__
#define __PI_UEFI_H__

#include <gpxe/efi/Uefi/UefiBaseType.h>
#include <gpxe/efi/Uefi/UefiSpec.h>

#endif

