|
ReXGlue SDK
|
#include <rex/filesystem/xex.h>
Public Member Functions | |
| virtual const kernel::XEXHeader & | GetHeader () const =0 |
| virtual std::span< const u8 > | GetHeaderBytes () const =0 |
| template<typename T> | |
| const T * | GetOptHeader (kernel::XEXHeaderKey key) const |
| virtual std::optional< u32 > | GetOptHeaderValue (kernel::XEXHeaderKey key) const =0 |
| virtual const XEXSecurityInfo & | GetSecurity () const =0 |
| virtual std::span< const XEXImportLibrary > | GetImports () const =0 |
| virtual std::vector< u32 > | GetAlternateTitleIDs () const =0 |
| virtual bool | IsPatch () const =0 |
| virtual XEXKey | GetKey () const =0 |
| virtual u32 | GetImageSize () const =0 |
| virtual Result< void > | Decode (std::span< const u8 > file, std::span< u8 > image)=0 |
| virtual Result< std::unique_ptr< IXEXImage > > | ApplyHeaderDelta (const IXEXImage &patch) const =0 |
| virtual Result< void > | ApplyImageDelta (const IXEXImage &patch, std::span< u8 > image) const =0 |
Protected Member Functions | |
| virtual const void * | FindOptHeader (kernel::XEXHeaderKey key) const =0 |
Parsed XEX header, security info and import libraries. Create one with IFileSystemFactory.
|
nodiscardpure virtual |
Returns this image with the header delta of a patch applied.
| patch | A patch image from the same factory. |
|
nodiscardpure virtual |
Applies the image delta of a patch to a decoded image.
| patch | The patch image ApplyHeaderDelta used. |
| image | The decoded image, sized for the larger of the old and new images. |
|
nodiscardpure virtual |
Decrypts and decompresses the image, trying the keys in XEXKey order.
| file | The whole file the image was parsed from. |
| image | Receives the image. Bytes past the decoded data are 0. |
|
pure virtual |
Returns the byte swapped XEX header.
|
pure virtual |
Returns the image size from the page descriptors.
|
pure virtual |
Returns the key Decode selected. Retail before a successful Decode.
|
inline |
Returns the data of an optional header whose key low byte is not 0 or 1, or null when absent.
|
pure virtual |
Returns the value of an optional header whose key low byte is 0 or 1, or nothing when absent.