usbloadergx/source/usbloader/wbfs/wbfs_base.h

55 lines
1.6 KiB
C
Raw Normal View History

#ifndef _H
#define _H
#include "libwbfs/libwbfs.h"
#include "usbloader/utils.h"
#include "usbloader/frag.h"
class Wbfs
{
public:
Wbfs( u32, u32, u32 );
void GetProgressValue( s32 * d, s32 * m );
static s32 Init( u32 );
void Close();
s32 CheckGame( u8 * );
s32 GameSize( u8 *, f32 * );
wbfs_t *GetHddInfo( void );
bool Mounted();
virtual int GetFragList( u8 *id );
virtual int GetFragList( char *filename, _frag_append_t append_fragment, FragList * );
virtual bool ShowFreeSpace( void );
virtual s32 Open() = 0;
virtual wbfs_disc_t* OpenDisc( u8 *discid ) = 0;
virtual void CloseDisc( wbfs_disc_t *disc ) = 0;
virtual s32 Format();
virtual s32 GetCount( u32 * ) = 0;
virtual s32 GetHeaders( struct discHdr *, u32, u32 ) = 0;
virtual s32 AddGame( void ) = 0;
virtual s32 RemoveGame( u8 * ) = 0;
virtual s32 DiskSpace( f32 *, f32 * ) = 0;
virtual s32 RenameGame( u8 *, const void * ) = 0;
virtual s32 ReIDGame( u8 *discid, const void *newID ) = 0;
virtual f32 EstimateGameSize( void ) = 0;
/*
static s32 OpenPart(u32 part_fat, u32 part_idx, u32 part_lba, u32 part_size, char *partition);
static s32 OpenNamed(char *partition);
static s32 OpenLBA(u32 lba, u32 size);
*/
protected:
static u32 nb_sectors;
/* WBFS HDD */
wbfs_t *hdd;
u32 device, lba, size;
private:
static s32 total, done;
};
#endif //_H