78 lines
1.3 KiB
C
78 lines
1.3 KiB
C
/*++
|
|
|
|
Copyright (c) 1999 Intel Corporation
|
|
|
|
ModuleName:
|
|
libBufferImage.c
|
|
|
|
Abstract:
|
|
Defines the routines to handle the image of the buffer in memory and
|
|
provides access to handle whatever type it is - a file, disk, or memory
|
|
image
|
|
|
|
--*/
|
|
|
|
#ifndef _LIB_BUFFER_IMAGE
|
|
#define _LIB_BUFFER_IMAGE
|
|
|
|
#include "libMisc.h"
|
|
|
|
extern EE_FILE_IMAGE FileImage;
|
|
extern EE_DISK_IMAGE DiskImage;
|
|
extern EE_MEM_IMAGE MemImage;
|
|
|
|
STATIC EFI_STATUS BufferImageInit (VOID);
|
|
STATIC EFI_STATUS BufferImageCleanup (VOID);
|
|
|
|
|
|
EE_BUFFER_IMAGE BufferImage = {
|
|
NULL,
|
|
NO_BUFFER,
|
|
0,
|
|
BufferImageInit,
|
|
BufferImageCleanup,
|
|
Nothing,
|
|
Nothing,
|
|
Nothing,
|
|
Nothing,
|
|
Nothing,
|
|
&FileImage,
|
|
&DiskImage,
|
|
&MemImage
|
|
};
|
|
|
|
|
|
STATIC
|
|
EFI_STATUS
|
|
BufferImageInit (
|
|
VOID
|
|
)
|
|
{
|
|
BufferImage.ListHead = AllocatePool(sizeof(LIST_ENTRY));
|
|
InitializeListHead(BufferImage.ListHead);
|
|
|
|
return EFI_SUCCESS;
|
|
}
|
|
|
|
STATIC
|
|
EFI_STATUS
|
|
BufferImageCleanup (
|
|
VOID
|
|
)
|
|
{
|
|
EE_LINE *Blank;
|
|
|
|
BufferImage.Close();
|
|
BufferImage.ImageCleanup();
|
|
BufferImage.BufferType = NO_BUFFER;
|
|
|
|
Blank = LineCurrent();
|
|
RemoveEntryList(&Blank->Link);
|
|
FreePool(Blank);
|
|
FreePool(BufferImage.ListHead);
|
|
|
|
return EFI_SUCCESS;
|
|
}
|
|
|
|
#endif /* _LIB_BUFFER_IMAGE */
|