Add classes for mounting FAT16/32 without help from OS

Minimal implementation for reading/writing files in the root
directory of a FAT16/FAT32 file system.

Can read/write from raw disk devices, and no longer relies on
operating system support for mounting the file system.

Currently assumes Imager will always be run on 'little endian'
architectures such as Intel and ARM (at least under Linux).
If there is a use-case for big-endian (anybody still using Sparc?)
this may be revisited later.
This commit is contained in:
Floris Bos 2022-11-14 20:18:36 +01:00
parent 30225187bd
commit 142ddfc037
10 changed files with 1193 additions and 1 deletions

View file

@ -0,0 +1,21 @@
#ifndef DEVICEWRAPPERBLOCKCACHEENTRY_H
#define DEVICEWRAPPERBLOCKCACHEENTRY_H
/*
* SPDX-License-Identifier: Apache-2.0
* Copyright (C) 2022 Raspberry Pi Ltd
*/
#include <QObject>
class DeviceWrapperBlockCacheEntry : QObject
{
Q_OBJECT
public:
DeviceWrapperBlockCacheEntry(QObject *parent, size_t blocksize = 4096);
~DeviceWrapperBlockCacheEntry();
char *block;
bool dirty;
};
#endif // DEVICEWRAPPERBLOCKCACHEENTRY_H