mirror of
https://gitlab.com/Mr_Goldberg/goldberg_emulator.git
synced 2024-10-30 21:20:10 +00:00
58 lines
2.3 KiB
C++
58 lines
2.3 KiB
C++
|
|
#ifndef ISTEAMREMOTESTORAGE004_H
|
|
#define ISTEAMREMOTESTORAGE004_H
|
|
#ifdef STEAM_WIN32
|
|
#pragma once
|
|
#endif
|
|
|
|
//-----------------------------------------------------------------------------
|
|
// Purpose: Functions for accessing, reading and writing files stored remotely
|
|
// and cached locally
|
|
//-----------------------------------------------------------------------------
|
|
class ISteamRemoteStorage004
|
|
{
|
|
public:
|
|
// NOTE
|
|
//
|
|
// Filenames are case-insensitive, and will be converted to lowercase automatically.
|
|
// So "foo.bar" and "Foo.bar" are the same file, and if you write "Foo.bar" then
|
|
// iterate the files, the filename returned will be "foo.bar".
|
|
//
|
|
|
|
// file operations
|
|
virtual bool FileWrite( const char *pchFile, const void *pvData, int32 cubData ) = 0;
|
|
virtual int32 FileRead( const char *pchFile, void *pvData, int32 cubDataToRead ) = 0;
|
|
virtual bool FileForget( const char *pchFile ) = 0;
|
|
virtual bool FileDelete( const char *pchFile ) = 0;
|
|
virtual SteamAPICall_t FileShare( const char *pchFile ) = 0;
|
|
virtual bool SetSyncPlatforms( const char *pchFile, ERemoteStoragePlatform eRemoteStoragePlatform ) = 0;
|
|
|
|
// file information
|
|
virtual bool FileExists( const char *pchFile ) = 0;
|
|
virtual bool FilePersisted( const char *pchFile ) = 0;
|
|
virtual int32 GetFileSize( const char *pchFile ) = 0;
|
|
virtual int64 GetFileTimestamp( const char *pchFile ) = 0;
|
|
virtual ERemoteStoragePlatform GetSyncPlatforms( const char *pchFile ) = 0;
|
|
|
|
// iteration
|
|
virtual int32 GetFileCount() = 0;
|
|
virtual const char *GetFileNameAndSize( int iFile, int32 *pnFileSizeInBytes ) = 0;
|
|
|
|
// configuration management
|
|
virtual bool GetQuota( int32 *pnTotalBytes, int32 *puAvailableBytes ) = 0;
|
|
virtual bool IsCloudEnabledForAccount() = 0;
|
|
virtual bool IsCloudEnabledForApp() = 0;
|
|
virtual void SetCloudEnabledForApp( bool bEnabled ) = 0;
|
|
|
|
// user generated content
|
|
virtual SteamAPICall_t UGCDownload( UGCHandle_t hContent ) = 0;
|
|
virtual bool GetUGCDetails( UGCHandle_t hContent, AppId_t *pnAppID, char **ppchName, int32 *pnFileSizeInBytes, CSteamID *pSteamIDOwner ) = 0;
|
|
virtual int32 UGCRead( UGCHandle_t hContent, void *pvData, int32 cubDataToRead ) = 0;
|
|
|
|
// user generated content iteration
|
|
virtual int32 GetCachedUGCCount() = 0;
|
|
virtual UGCHandle_t GetCachedUGCHandle( int32 iCachedContent ) = 0;
|
|
};
|
|
|
|
#endif // ISTEAMREMOTESTORAGE004_H
|