X-Git-Url: https://code.delx.au/refind/blobdiff_plain/2eb4a9ca3c35a44bb35b7a0998ff036797a8580e..39f21d099c9fb310bae28b54dc68d266ed610ed7:/refind/lib.h diff --git a/refind/lib.h b/refind/lib.h index 8b63c22..35a3740 100644 --- a/refind/lib.h +++ b/refind/lib.h @@ -35,18 +35,24 @@ */ /* * Modifications copyright (c) 2012 Roderick W. Smith - * + * * Modifications distributed under the terms of the GNU General Public * License (GPL) version 3 (GPLv3), a copy of which must be distributed * with this source code or binaries made from it. - * + * */ #ifndef __LIB_H_ #define __LIB_H_ +#ifdef __MAKEWITH_GNUEFI #include "efi.h" #include "efilib.h" +#else +#include "../include/tiano_includes.h" +#endif + +#include "global.h" #include "libeg.h" @@ -76,13 +82,14 @@ EFI_STATUS ReinitRefitLib(VOID); VOID CleanUpPathNameSlashes(IN OUT CHAR16 *PathName); VOID CreateList(OUT VOID ***ListPtr, OUT UINTN *ElementCount, IN UINTN InitialElementCount); VOID AddListElement(IN OUT VOID ***ListPtr, IN OUT UINTN *ElementCount, IN VOID *NewElement); -VOID FreeList(IN OUT VOID ***ListPtr, IN OUT UINTN *ElementCount /*, IN Callback*/); +VOID FreeList(IN OUT VOID ***ListPtr, IN OUT UINTN *ElementCount); VOID ExtractLegacyLoaderPaths(EFI_DEVICE_PATH **PathList, UINTN MaxPaths, EFI_DEVICE_PATH **HardcodedPathList); VOID ScanVolumes(VOID); BOOLEAN FileExists(IN EFI_FILE *BaseDir, IN CHAR16 *RelativePath); +BOOLEAN DirectoryExists(IN EFI_FILE *BaseDir, IN CHAR16 *RelativePath); EFI_STATUS DirNextEntry(IN EFI_FILE *Directory, IN OUT EFI_FILE_INFO **DirEntry, IN UINTN FilterMode); @@ -101,7 +108,15 @@ VOID MergeStrings(IN OUT CHAR16 **First, IN CHAR16 *Second, CHAR16 AddChar); CHAR16 *FindExtension(IN CHAR16 *Path); CHAR16 *FindLastDirName(IN CHAR16 *Path); CHAR16 *FindPath(IN CHAR16* FullPath); +VOID FindVolumeAndFilename(IN EFI_DEVICE_PATH *loadpath, OUT REFIT_VOLUME **DeviceVolume, OUT CHAR16 **loader); +BOOLEAN SplitVolumeAndFilename(IN OUT CHAR16 **Path, OUT CHAR16 **VolName); CHAR16 *FindNumbers(IN CHAR16 *InString); CHAR16 *FindCommaDelimited(IN CHAR16 *InString, IN UINTN Index); +BOOLEAN IsIn(IN CHAR16 *SmallString, IN CHAR16 *List); +VOID MyFreePool(IN OUT VOID *Pointer); + +BOOLEAN EjectMedia(VOID); + +CHAR16 * GuidAsString(EFI_GUID *GuidData); #endif \ No newline at end of file