mirror of https://github.com/acidanthera/audk.git
75 lines
1.5 KiB
C
75 lines
1.5 KiB
C
#ifndef DYNAMIC_BUFFER_H
|
|
#define DYNAMIC_BUFFER_H
|
|
|
|
#include <stdint.h>
|
|
|
|
typedef struct {
|
|
uint32_t AllocatedSize;
|
|
uint32_t DataSize;
|
|
uint8_t *Memory;
|
|
} image_tool_dynamic_buffer;
|
|
|
|
void
|
|
ImageToolBufferInit (
|
|
image_tool_dynamic_buffer *Buffer
|
|
);
|
|
|
|
uint32_t
|
|
ImageToolBufferAppend (
|
|
image_tool_dynamic_buffer *Buffer,
|
|
const void *Data,
|
|
uint32_t Size
|
|
);
|
|
|
|
uint32_t
|
|
ImageToolBufferAppendReserve (
|
|
image_tool_dynamic_buffer *Buffer,
|
|
uint32_t Size
|
|
);
|
|
|
|
uint32_t
|
|
ImageToolBufferAppendReserveAlign (
|
|
image_tool_dynamic_buffer *Buffer,
|
|
uint32_t Alignment
|
|
);
|
|
|
|
void
|
|
ImageToolBufferRead (
|
|
void *Data,
|
|
uint32_t Size,
|
|
const image_tool_dynamic_buffer *Buffer,
|
|
uint32_t Offset
|
|
);
|
|
|
|
void
|
|
ImageToolBufferWrite (
|
|
image_tool_dynamic_buffer *Buffer,
|
|
uint32_t Offset,
|
|
const void *Data,
|
|
uint32_t Size
|
|
);
|
|
|
|
void *
|
|
ImageToolBufferGetPointer (
|
|
const image_tool_dynamic_buffer *Buffer,
|
|
uint32_t Offset
|
|
);
|
|
|
|
uint32_t
|
|
ImageToolBufferGetSize (
|
|
const image_tool_dynamic_buffer *Buffer
|
|
);
|
|
|
|
void *
|
|
ImageToolBufferDump (
|
|
uint32_t *Size,
|
|
image_tool_dynamic_buffer *Buffer
|
|
);
|
|
|
|
void
|
|
ImageToolBufferFree (
|
|
image_tool_dynamic_buffer *Buffer
|
|
);
|
|
|
|
#endif // DYNAMIC_BUFFER_H
|