#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