RetroLinker
Linker for several 8-bit, 16-bit and 32-bit formats
Loading...
Searching...
No Matches
Classes | Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
Microsoft::LEFormat::IteratedPage Class Reference

A data structure to represent an LE/LX iterated page, consisting of data produced from a repetition of a certain pattern. More...

#include <leexe.h>

Inheritance diagram for Microsoft::LEFormat::IteratedPage:
Linker::Image Linker::Contents

Classes

struct  IterationRecord
 
class  View
 An image instance where the iterated page data can be accessed as the series of bytes it generates. More...
 

Public Member Functions

offset_t ImageSize () const override
 Retrieves the offset of the byte after the last one belonging to this format from the first one.
 
offset_t WriteFile (const std::shared_ptr< Linker::Writer > &wr, offset_t count, offset_t offset=0) const override
 Writes data of non-zero filled sections.
 
size_t ReadData (size_t bytes, offset_t offset, void *buffer) const override
 Attempts to fill a buffer with data.
 
- Public Member Functions inherited from Linker::Image
std::shared_ptr< const Image > AsImage () const override
 Retrieves a randomly accessible image.
 
uint64_t ReadUnsigned (size_t bytes, offset_t offset, EndianType endiantype) const
 Reads an unsigned number at a specific offset.
 
uint64_t ReadUnsigned (size_t bytes, offset_t offset) const
 Reads an unsigned number at a specific offset with the default endianness.
 
int64_t ReadSigned (size_t bytes, offset_t offset, EndianType endiantype) const
 Reads a signed number at a specific offset.
 
int64_t ReadSigned (size_t bytes, offset_t offset) const
 Reads a signed number at a specific offset with the default endianness.
 
int GetByte (offset_t offset) const
 Retrieve byte at a certain offset (optional, might not be defined)
 
offset_t WriteFile (const std::shared_ptr< Writer > &wr) const override
 Writes data of non-zero filled sections.
 
virtual offset_t WriteFile (const std::shared_ptr< Writer > &wr) const=0
 Writes data of non-zero filled sections.
 
- Public Member Functions inherited from Linker::Contents
std::shared_ptr< Image > AsImage ()
 Retrieves a randomly accessible image.
 

Static Public Member Functions

static std::shared_ptr< IteratedPage > ReadFromFile (const std::shared_ptr< Linker::Reader > &rd, uint16_t size)
 

Public Attributes

std::vector< IterationRecord > records
 

Detailed Description

A data structure to represent an LE/LX iterated page, consisting of data produced from a repetition of a certain pattern.

Member Function Documentation

◆ ImageSize()

offset_t LEFormat::IteratedPage::ImageSize ( ) const
overridevirtual

Retrieves the offset of the byte after the last one belonging to this format from the first one.

Returns
The size of the image, or offset_t(-1) if it cannot be determined before writing to the file

Implements Linker::Contents.

◆ ReadData()

size_t LEFormat::IteratedPage::ReadData ( size_t  bytes,
offset_t  offset,
void *  buffer 
) const
overridevirtual

Attempts to fill a buffer with data.

Parameters
bytesThe (maximum) number of bytes to place in buffer
offsetThe offset in the image to start reading the data
bufferA byte buffer
Returns
Actual number of bytes copied into buffer

Implements Linker::Image.

◆ WriteFile()

offset_t LEFormat::IteratedPage::WriteFile ( const std::shared_ptr< Linker::Writer > &  wr,
offset_t  count,
offset_t  offset = 0 
) const
overridevirtual

Writes data of non-zero filled sections.

Reimplemented from Linker::Image.


The documentation for this class was generated from the following files: