Steamクラウドにリモートで保管できるファイルの読み取り、書き込み、アクセスを提供する関数。
詳細は
Steamクラウドを参照してください。
メンバ関数
ISteamRemoteStorage
のメンバ関数は、グローバルのアクセサ関数
SteamRemoteStorage()
経由で呼び出されます。
BeginFileWriteBatch
bool BeginFileWriteBatch( );
これを
EndFileWriteBatchと使用して、1つの状態変更ととらえられるべきローカルファイルの読み込み/削除をラップします。 例えば、ゲーム保存プログレスが
savegame1.dat
と
maxprogress.dat
の両方の更新を必要とするときは、これらのオペレーションを
BeginFileWriteBatch
EndFileWriteBatch
呼び出しとラップします。
これらの関数はSteamのアプリのクラウドファイル管理を助けるヒントを提供します。 これらの関数の使用は任意ですが、より優れた信頼性を提供します。
関数は
ISteamRemoteStorage
APIを使用して書き込みが終了したか、(AutoCloudが使用されている場合は)直接ローカルディスクへ書き込んだ場合に使用されます。
戻り値: bool
true は書き込みバッチ化が開始した場合、既に進行中のバッチがある場合は
false。
CommitPublishedFileUpdate
SteamAPICall_t CommitPublishedFileUpdate( PublishedFileUpdateHandle_t updateHandle );
使用されていません - 非推奨のRemoteStorageベースのワークショップAPIとのみ使用。
戻り値: SteamAPICall_tは
RemoteStorageUpdatePublishedFileResult_tの呼び出し結果と使われます。
CreatePublishedFileUpdateRequest
PublishedFileUpdateHandle_t CreatePublishedFileUpdateRequest( PublishedFileId_t unPublishedFileId );
使用されていません - 非推奨のRemoteStorageベースのワークショップAPIとのみ使用。
戻り値: PublishedFileUpdateHandle_tDeletePublishedFile
SteamAPICall_t DeletePublishedFile( PublishedFileId_t unPublishedFileId );
使用されていません - 非推奨のRemoteStorageベースのワークショップAPIとのみ使用。
戻り値: SteamAPICall_t は
RemoteStorageDeletePublishedFileResult_tの呼び出し結果と使われます。
EndFileWriteBatch
bool EndFileWriteBatch( );
これは
BeginFileWriteBatchと使用します。詳細はドキュメント参照。
戻り値: bool
true は書き込みバッチ化が終了した場合、既に進行中のバッチがない場合は
false。
EnumeratePublishedFilesByUserAction
SteamAPICall_t EnumeratePublishedFilesByUserAction( EWorkshopFileAction eAction, uint32 unStartIndex );
使用されていません - 非推奨のRemoteStorageベースのワークショップAPIとのみ使用。
戻り値: SteamAPICall_tは
RemoteStorageEnumeratePublishedFilesByUserActionResult_tの呼び出し結果と使われます。
EnumeratePublishedWorkshopFiles
SteamAPICall_t EnumeratePublishedWorkshopFiles( EWorkshopEnumerationType eEnumerationType, uint32 unStartIndex, uint32 unCount, uint32 unDays, SteamParamStringArray_t *pTags, SteamParamStringArray_t *pUserTags );
使用されていません - 非推奨のRemoteStorageベースのワークショップAPIとのみ使用。
戻り値: SteamAPICall_t は
RemoteStorageEnumerateWorkshopFilesResult_tの呼び出し結果と使われます。
EnumerateUserPublishedFiles
SteamAPICall_t EnumerateUserPublishedFiles( uint32 unStartIndex );
使用されていません - 非推奨のRemoteStorageベースのワークショップAPIとのみ使用。
戻り値: SteamAPICall_tは
RemoteStorageEnumerateUserPublishedFilesResult_tの呼び出し結果と使われます。
EnumerateUserSharedWorkshopFiles
SteamAPICall_t EnumerateUserSharedWorkshopFiles( CSteamID steamId, uint32 unStartIndex, SteamParamStringArray_t *pRequiredTags, SteamParamStringArray_t *pExcludedTags );
使用されていません - 非推奨のRemoteStorageベースのワークショップAPIとのみ使用。
戻り値: SteamAPICall_tは
RemoteStorageEnumerateUserPublishedFilesResult_tの呼び出し結果と使われます。
EnumerateUserSubscribedFiles
SteamAPICall_t EnumerateUserSubscribedFiles( uint32 unStartIndex );
使用されていません - 非推奨のRemoteStorageベースのワークショップAPIとのみ使用。
戻り値: SteamAPICall_tは
RemoteStorageEnumerateUserSubscribedFilesResult_tの呼び出し結果と使われます。
FileDelete
bool FileDelete( const char *pchFile );
名前 | 型 | 説明 |
pchFile | const char * | 削除されるファイルの名前。 |
ローカルディスクからファイルを削除し、クラウドにその削除を伝達します。
これは、ユーザーが能動的にファイルを削除した時にのみ使用されます。 ユーザーのローカルディスクには残したまま、Steamクラウドからファイルを削除したい場合には
FileForgetを使用します。
ファイルが削除された後、
FileWriteを使って書き換えでき、Steamクラウドへ再アップロードできます。
戻り値: bool
true は、ファイルが存在し、削除に成功した場合です。ファイルが存在しなかった場合は
falseです。
FileExists
bool FileExists( const char *pchFile );
名前 | 型 | 説明 |
pchFile | const char * | ファイル名。 |
指定のファイルが存在するかを確認します。
戻り値: bool
true は、ファイルが存在する場合で、それ以外は
falseです。
FileFetch
bool FileFetch( const char *pchFile );
名前 | 型 | 説明 |
pchFile | const char * | |
使用されていません - PS3のみ。
戻り値: bool
FileForget
bool FileForget( const char *pchFile );
名前 | 型 | 説明 |
pchFile | const char * | 忘れられるファイルの名前。 |
リモートストレージからファイルを削除しますが、ローカルディスクには残してAPIからアクセス可能なままにします。
クラウドのスペースが不足した場合に使用でき、
FileWriteへの呼び出しを許可することで、ユーザーにファイルを削除させる必要なく機能させるようにします。
どのファイルを忘れさせるかはあなたが決定できます。 単純に最も使用頻度の少ない(Least Recently Used/LRU)キューでも、更に複雑な物でも構いません。
ユーザーにゲーム用のクラウド可能なサイズのファイルを管理させることは、可能ですが、非推奨です。 例えば、「新しいファイルを保存するためにどのファイルを削除しますか?」はそもそもクラウドが使用できることの重要な利点である透明性を失ってしまします。
ファイルを削除または忘れた後は、
FileWriteを呼び出すと、クラウドとそのことを再同期します。 忘れられたファイルを再び永続化する唯一の方法は、ファイルを書き換えることです。
戻り値: bool
true は、ファイルが存在し、忘れることに成功した場合のみです。それ以外は
falseです。
FilePersist
bool FilePersist( const char *pchFile );
名前 | 型 | 説明 |
pchFile | const char * | |
使用されていません - PS3のみ。
戻り値: bool
FilePersisted
bool FilePersisted( const char *pchFile );
名前 | 型 | 説明 |
pchFile | const char * | ファイル名。 |
指定のファイルがSteamクラウド内に保持されているかを確認します。
戻り値: bool
true は、ファイルが存在しSteamクラウド内で保持されている場合。
false は、
FileForgetが呼び出され、ローカルでのみ利用可能だった場合。
FileRead
int32 FileRead( const char *pchFile, void *pvData, int32 cubDataToRead );
名前 | 型 | 説明 |
pchFile | const char * | 読み込むファイルの名前。 |
pvData | void * | ファイルが読み込まれるバッファー。 このバッファーは少なくともcubDataToRead に提供されるサイズと同じでなければなりません。 |
cubDataToRead | int32 | 読み取るバイト数。 通常、GetFileSizeまたはGetFileTimestampから取得します。 |
バイナリファイルを開き、ファイルの内容をバイト配列に読み取り、ファイルを閉じます。
注意: これは同期呼び出しであるため、ディスクIOのスレッドの呼び出しスレッドをブロックし、SteamAPIもブロックします。その結果、アプリケーション内の他のスレッドがブロックされる場合があります。
FileReadAsyncを使用するクライアントマシーンのビジーディスクによるヒッチを回避するには、このAPIの非同期バージョンを推奨します。
戻り値: int32読み取られたバイト数。
ファイルが存在しないか読み取りが失敗した場合
0を返します。
FileReadAsync
SteamAPICall_t FileReadAsync( const char *pchFile, uint32 nOffset, uint32 cubToRead );
名前 | 型 | 説明 |
pchFile | const char * | 読み込むファイルの名前。 |
nOffset | uint32 | 読み取りを開始するファイルへのバイト単位のオフセット。 ファイル全体を一つのチャンクで読み取る場合には0。 |
cubToRead | uint32 | nOffset から始まる読み取りバイト数。 |
ファイルから非同期読み取りを開始します。
オフセットと読み取る量は、
GetFileSizeまたは
GetFileTimestampの指定通り、ファイルのサイズに対して有効でなければなりません。
戻り値: SteamAPICall_tは
RemoteStorageFileReadAsyncComplete_t 呼び出し結果で使用されます。
以下の状況において、
k_uAPICallInvalidを返します。
- 無効なパスまたはファイル名から読み取ろうとしました。 Steamクラウドはクロスプラットフォームのためファイルはサポート対象のすべてのOSとファイルシステムで有効な名前を持つ必要があります。 マイクロソフト社のドキュメントはこちらです:Naming Files, Paths, and Namespaces。
- そのファイルは存在しません。
-
cubDataToRead
が<= 0 バイトです。 何かを読み取りできる必要があります。
-
pvData
とcubDataToRead
の組み合わせは、ファイルの終わりを超えて読み取られます。
- このファイルで既に非同期読み取りが進行中です。
読み取り要求が完了すると、呼び出し結果を受け取ります。呼び出し結果内の
m_eResult
の値が
k_EResultOKの場合、 要求データをバッファーに読み取るために
FileReadAsyncCompleteを呼び出すことができます。
hReadCall
パラメーターはこの関数の戻り値と一致する必要があり、 読み取り量は通常、
m_nOffset
と
m_cubRead
で示されたように要求された量と等しくなければなりません。
FileReadAsyncComplete
bool FileReadAsyncComplete( SteamAPICall_t hReadCall, void *pvBuffer, uint32 cubToRead );
FileReadAsyncで非同期に読み取られたファイルからバイトを、バイト配列にコピーします。
これは
RemoteStorageFileReadAsyncComplete_tの呼び出し結果のコンテキスト外で呼び出されるべきではありません。
戻り値: bool
true はファイルの読み取り成功。
それ以外は、以下の状況において
false:
FileShare
SteamAPICall_t FileShare( const char *pchFile );
名前 | 型 | 説明 |
pchFile | const char * | |
戻り値: SteamAPICall_tは
RemoteStorageFileShareResult_tの呼び出し結果と使われます。
FileWrite
bool FileWrite( const char *pchFile, const void *pvData, int32 cubData );
名前 | 型 | 説明 |
pchFile | const char * | 書き込むファイルの名前。 |
pvData | const void * | ファイルに書き込むバイト。 |
cubData | int32 | ファイルに書き込むバイト数。 通常はpvData サイズの合計です。 |
新しくファイルを作成し、ファイルにバイトを書き込んでから、ファイルを閉じます。 ターゲットファイルが既に存在する場合には、上書きされます。
注意: これは同期呼び出しであるため、ディスクIOのスレッドの呼び出しスレッドをブロックし、SteamAPIもブロックします。その結果、アプリケーション内の他のスレッドがブロックされる場合があります。
FileWriteAsyncを使用するクライアントマシーンのビジーディスクによるヒッチを回避するには、このAPIの非同期バージョンを推奨します。
戻り値: bool
true は書き込みが成功した場合。
それ以外は、以下の状況において
false:
- 書き込もうとしているファイルはk_unMaxCloudFileChunkSizeで定義された100MiBを超えています。
-
cubData
が0より小さい。
-
pvData
がNULL。
- 無効なパスまたはファイル名に書き込もうとしました。 Steamクラウドはクロスプラットフォームのためファイルはサポート対象のすべてのOSとファイルシステムで有効な名前を持つ必要があります。 マイクロソフト社のドキュメントはこちらです:Naming Files, Paths, and Namespaces。
- 現在のユーザーのSteamクラウドストレージクォータを超えました。 スペースが足りないか、ファイル数が多すぎる可能性があります。
- Steamクラウドはディスクに書き込めませんでした。ロケーションは読み取り専用かもしれません。
FileWriteAsync
SteamAPICall_t FileWriteAsync( const char *pchFile, const void *pvData, uint32 cubData );
名前 | 型 | 説明 |
pchFile | const char * | 書き込むファイルの名前。 |
pvData | const void * | ファイルに書き込むバイト。 |
cubData | uint32 | ファイルに書き込むバイト数。 通常はpvData サイズの合計です。 |
新しいファイルを作成し、未加工のバイトデータを非同期でSteamクラウドに書き込み、ファイルを閉じます。 ターゲットファイルが既に存在する場合には、上書きされます。
戻り値: SteamAPICall_tは
RemoteStorageFileWriteAsyncComplete_t 呼び出し結果で使用されます。
以下の状況において、
k_uAPICallInvalidを返します。
- 書き込もうとしているファイルはk_unMaxCloudFileChunkSizeで定義された100MiBを超えています。
-
cubData
が0より小さい。
-
pvData
がNULL。
- 無効なパスまたはファイル名に書き込もうとしました。 Steamクラウドはクロスプラットフォームのためファイルはサポート対象のすべてのOSとファイルシステムで有効な名前を持つ必要があります。 マイクロソフト社のドキュメントはこちらです:Naming Files, Paths, and Namespaces。
- 現在のユーザーのSteamクラウドストレージクォータを超えました。 スペースが足りないか、ファイル数が多すぎる可能性があります。
FileWriteStreamCancel
bool FileWriteStreamCancel( UGCFileWriteStreamHandle_t writeHandle );
FileWriteStreamOpenが開始したファイル書き込みストリームをキャンセルします。
これによって、書き込まれたすべてのデータが破棄され、書き込みストリームをクローズしますが、この名前の既存のファイルが存在する場合には、そのまま残ります。
戻り値: bool
FileWriteStreamClose
bool FileWriteStreamClose( UGCFileWriteStreamHandle_t writeHandle );
FileWriteStreamOpenが開始したファイル書き込みストリームを終了します。
これにより、ストリームがディスクにフラッシュされ、既存のファイルが存在する場合には上書きされます。
戻り値: bool
true は、書き込みストリームが正常に閉じられ、ファイルがディスクにコミットされた場合です。
false は
writeHandle
が有効なファイル書き込みストリームでない場合です。
FileWriteStreamOpen
UGCFileWriteStreamHandle_t FileWriteStreamOpen( const char *pchFile );
名前 | 型 | 説明 |
pchFile | const char * | 書き込むファイルの名前。 |
新しいファイル出力ストリームを作成して、データをチャンクとしてSteamクラウドファイルにストリームできるようにします。 ターゲットファイルが既に存在する場合は、
FileWriteStreamCloseが呼び出されるまで上書きされません。
このストリームにデータを書き込むには
FileWriteStreamWriteChunkを使用し、 クローズまたはキャンセルにはそれぞれ
FileWriteStreamCloseと
FileWriteStreamCancelを使用します。
戻り値: UGCFileWriteStreamHandle_t次の状況で
k_UGCFileStreamHandleInvalidを返します:
- 無効なパスまたはファイル名に書き込もうとしました。 Steamクラウドはクロスプラットフォームのためファイルはサポート対象のすべてのOSとファイルシステムで有効な名前を持つ必要があります。 マイクロソフト社のドキュメントはこちらです:Naming Files, Paths, and Namespaces。
- 現在のユーザーのSteamクラウドストレージクォータを超えました。 スペースが足りないか、ファイル数が多すぎる可能性があります。
FileWriteStreamWriteChunk
bool FileWriteStreamWriteChunk( UGCFileWriteStreamHandle_t writeHandle, const void *pvData, int32 cubData );
データのblobをファイル書き込みストリームに書き込みます。
戻り値: bool
true はデータがファイル書き込みストリームに正常に書き込まれた場合です。
false は
writeHandle
が有効な書き込みストリームではない場合、
cubData
が負または
k_unMaxCloudFileChunkSizeより大きい、または現在のユーザーのSteamクラウドストレージが超過した場合です。 スペースが足りないか、ファイル数が多すぎる可能性があります。
GetCachedUGCCount
int32 GetCachedUGCCount();
戻り値: int32GetCachedUGCHandle
UGCHandle_t GetCachedUGCHandle( int32 iCachedContent );
名前 | 型 | 説明 |
iCachedContent | int32 | |
戻り値: UGCHandle_tGetFileCount
int32 GetFileCount();
Steamクラウドによって同期されたローカルファイルの総数を取得します。
GetFileNameAndSizeの列挙に使用されます。
戻り値: int32サブフォルダ内のファイルも含め、現在のユーザーのために存在するファイルの数。
GetFileListFromServer
void GetFileListFromServer();
使用されていません - PS3のみ。
GetFileNameAndSize
const char * GetFileNameAndSize( int iFile, int32 *pnFileSizeInBytes );
名前 | 型 | 説明 |
iFile | int | ファイルのインデックス。これは0からGetFileCountの間でなければなりません。 |
pnFileSizeInBytes | int32 * | ファイルサイズをバイト単位で返します。 |
インデックスから、ファイルのファイル名とサイズを取得します。
注: まず
GetFileCountを呼び出して、ファイル数を取得する必要があります。
戻り値: const char *
指定のインデックスにあるファイルの名前(存在する場合)。 ファイルが存在しない場合は、空の文字列("")を返します。
例:int32 fileCount = SteamRemoteStorage()->GetFileCount();
for ( int i = 0; i < fileCount; ++i ) {
int32 fileSize;
const char *fileName = SteamRemoteStorage()->GetFileNameAndSize( i, &fileSize );
//fileSizeとfileNameを利用
}
GetFileSize
int32 GetFileSize( const char *pchFile );
名前 | 型 | 説明 |
pchFile | const char * | ファイル名。 |
指定のファイルのサイズをバイト単位で取得します。
戻り値: int32バイト単位のファイルのサイズ。 ファイルが存在しない場合、
0を返します。
GetFileTimestamp
int64 GetFileTimestamp( const char *pchFile );
名前 | 型 | 説明 |
pchFile | const char * | ファイル名。 |
指定のファイルの最終更新タイムスタンプをUnixエポック形式(1970年1月1日からの秒単位)で取得します。
戻り値: int64最後の修正のタイムスタンプUnixエポック形式(1970年1月1日以降からの秒数)で。
GetLocalFileChangeCount
int32 GetLocalFileChangeCount( );
注:動的Steamクラウド同期サポートのフラグのついたアプリにのみ適用されます。
アプリが
RemoteStorageLocalFileChange_tを受け取る際、このメソッドを使って発生した変更(ファイルアップデートやファイル削除)の数を取得します。 その後、
GetLocalFileChangeを使って変更を反復処理できます。
戻り値: int32ローカルファイルで発生した変更の数。
GetLocalFileChange
const char *GetLocalFileChange( int iFile, ERemoteStorageLocalFileChange *pEChangeType, ERemoteStorageFilePathType *pEFilePathType );
注:動的Steamクラウド同期サポートのフラグのついたアプリにのみ適用されます。
GetLocalFileChangeCountを呼び出してから、このメソッドを使って変更を反復処理します。 記述された変更は既にローカルファイルにあります。 アプリケーションは適切なアクションをとってディスクからの状態をリロードし、可能な場合はユーザーに通知します。
例えば、ローカルシステムが一時停止され、この間ユーザーが他の場所でプレイして、Steamクラウドに変更をアップロードした場合です。 復帰する際、アプリケーションの再開前に、Steamはこれら変更点をローカルシステムにダウンロードします。 アプリケーションは
RemoteStorageLocalFileChange_tを受け取り、
GetLocalFileChangeCountと
GetLocalFileChangeを使用してこれら変更を反復処理します。 アプリケーションの構造と、変更点の性質に基いて、アプリケーションは次のことができます:
- ゲームの進行状況を再読み込みして、ユーザーが他のデバイス上でゲームを終了したのとまったく同じポイントで再開する
- リロードを必要としない同期された変更をユーザーに通知する
- など
戻り値: const char *
この変更の影響を受けるファイルのファイル名またはフルパス 詳細情報は上述の
pEFilePathType
のコメント部分を参照。
GetPublishedFileDetails
SteamAPICall_t GetPublishedFileDetails( PublishedFileId_t unPublishedFileId, uint32 unMaxSecondsOld );
使用されていません - 非推奨のRemoteStorageベースのワークショップAPIとのみ使用。
戻り値: SteamAPICall_tは
RemoteStorageGetPublishedFileDetailsResult_tの呼び出し結果と使われます。
GetPublishedItemVoteDetails
SteamAPICall_t GetPublishedItemVoteDetails( PublishedFileId_t unPublishedFileId );
使用されていません - 非推奨のRemoteStorageベースのワークショップAPIとのみ使用。
戻り値: SteamAPICall_tは
RemoteStorageGetPublishedItemVoteDetailsResult_tの呼び出し結果と使われます。
GetQuota
bool GetQuota( uint64 *pnTotalBytes, uint64 *puAvailableBytes );
名前 | 型 | 説明 |
pnTotalBytes | uint64 * | ユーザーがアクセスできる合計バイト数を返します。 |
puAvailableBytes | uint64 * | 使用可能なバイト数を返します。 |
利用可能なバイト数を取得し、ユーザーのSteamクラウドストレージで使用します。
戻り値: bool
この関数は常に
trueを返します。
GetSyncPlatforms
ERemoteStoragePlatform GetSyncPlatforms( const char *pchFile );
名前 | 型 | 説明 |
pchFile | const char * | ファイル名。 |
指定のファイルが同期するプラットフォームを取得します。
戻り値: ERemoteStoragePlatformSetSyncPlatformsでファイルが設定されたプラットフォームを含むビットフィールド。
GetUGCDetails
bool GetUGCDetails( UGCHandle_t hContent, AppId_t *pnAppID, char **ppchName, int32 *pnFileSizeInBytes, CSteamID *pSteamIDOwner );
戻り値: bool
GetUGCDownloadProgress
bool GetUGCDownloadProgress( UGCHandle_t hContent, int32 *pnBytesDownloaded, int32 *pnBytesExpected );
戻り値: bool
GetUserPublishedItemVoteDetails
SteamAPICall_t GetUserPublishedItemVoteDetails( PublishedFileId_t unPublishedFileId );
使用されていません - 非推奨のRemoteStorageベースのワークショップAPIとのみ使用。
戻り値: SteamAPICall_tは
RemoteStorageGetPublishedItemVoteDetailsResult_tの呼び出し結果と使われます。
IsCloudEnabledForAccount
bool IsCloudEnabledForAccount();
このユーザーに対してアカウント全体のSteamクラウド設定が有効となっているか、設定->クラウドダイアログにて無効化済みかをチェックします。
これらの二つのオプションは相互に排他的であるため、
IsCloudEnabledForAppもチェックしていることを確認してください。
戻り値: bool
true はSteamクラウドがこのアカウントにおいて有効な場合で、それ以外は
false。
IsCloudEnabledForApp
bool IsCloudEnabledForApp();
ゲームごとのSteamクラウド設定がこのユーザーに対して有効となっているか、またはユーザーがゲーム内設定->アップデートダイアログで無効にしたかをチェックします。
これらの二つのオプションは相互に排他的であるため、
IsCloudEnabledForAccountもチェックしていることを確認してください。
通常、ゲーム内オプションでユーザーがこの設定を切り替え可能にすることを推奨します。切り替えは、
SetCloudEnabledForAppを使います。
戻り値: bool
true はSteamクラウドがこのアプリにおいて有効な場合で、それ以外は
false。
PublishVideo
SteamAPICall_t PublishVideo( EWorkshopVideoProvider eVideoProvider, const char *pchVideoAccount, const char *pchVideoIdentifier, const char *pchPreviewFile, AppId_t nConsumerAppId, const char *pchTitle, const char *pchDescription, ERemoteStoragePublishedFileVisibility eVisibility, SteamParamStringArray_t *pTags );
使用されていません - 非推奨のRemoteStorageベースのワークショップAPIとのみ使用。
戻り値: SteamAPICall_tは
RemoteStoragePublishFileProgress_tの呼び出し結果と使われます。
PublishWorkshopFile
SteamAPICall_t PublishWorkshopFile( const char *pchFile, const char *pchPreviewFile, AppId_t nConsumerAppId, const char *pchTitle, const char *pchDescription, ERemoteStoragePublishedFileVisibility eVisibility, SteamParamStringArray_t *pTags, EWorkshopFileType eWorkshopFileType );
使用されていません - 非推奨のRemoteStorageベースのワークショップAPIとのみ使用。
戻り値: SteamAPICall_tは
RemoteStoragePublishFileProgress_tの呼び出し結果と使われます。
ResetFileRequestState
bool ResetFileRequestState();
使用されていません - PS3のみ。
戻り値: bool
SetCloudEnabledForApp
void SetCloudEnabledForApp( bool bEnabled );
名前 | 型 | 説明 |
bEnabled | bool | このアプリケーションのSteamクラウドを有効化 (true)または無効化(false)しますか? |
アプリケーションにおけるSteamクラウドの有効・無効状態を切り替えます。
この設定は
IsCloudEnabledForAppで照会できます。
注: これは、ユーザーが明示的に有効化または無効化を要求した結果としてのみ呼び出される必要があります。 通常、ゲーム内オプションにおけるチェックボックスで実現されます。
SetSyncPlatforms
bool SetSyncPlatforms( const char *pchFile, ERemoteStoragePlatform eRemoteStoragePlatform );
ファイルを同期するオペレーティングシステムを指定できます。
プラットフォーム間で互換性のないデータがあるマルチプルプラットフォームゲームの場合、これを使用します。
ファイルは最初の作成時にデフォルトで
k_ERemoteStoragePlatformAllとなります。 ビットごとのOR演算子"|" を使用して複数のプラットフォームを指定できます。
戻り値: bool
true はファイルが存在する場合で、それ以外はfalseです。
SetUserPublishedFileAction
SteamAPICall_t SetUserPublishedFileAction( PublishedFileId_t unPublishedFileId, EWorkshopFileAction eAction );
使用されていません - 非推奨のRemoteStorageベースのワークショップAPIとのみ使用。
戻り値: SteamAPICall_tは
RemoteStorageSetUserPublishedFileActionResult_tの呼び出し結果と使われます。
SubscribePublishedFile
SteamAPICall_t SubscribePublishedFile( PublishedFileId_t unPublishedFileId );
使用されていません - 非推奨のRemoteStorageベースのワークショップAPIとのみ使用。
戻り値: SteamAPICall_tは
RemoteStorageSubscribePublishedFileResult_tの呼び出し結果と使われます。
UGCDownload
SteamAPICall_t UGCDownload( UGCHandle_t hContent, uint32 unPriority );
戻り値: SteamAPICall_tは
RemoteStorageDownloadUGCResult_tの呼び出し結果と使われます。
UGCDownloadToLocation
SteamAPICall_t UGCDownloadToLocation( UGCHandle_t hContent, const char *pchLocation, uint32 unPriority );
戻り値: SteamAPICall_tは
RemoteStorageDownloadUGCResult_tの呼び出し結果と使われます。
UGCRead
int32 UGCRead( UGCHandle_t hContent, void *pvData, int32 cubDataToRead, uint32 cOffset, EUGCReadAction eAction );
戻り値: int32UnsubscribePublishedFile
SteamAPICall_t UnsubscribePublishedFile( PublishedFileId_t unPublishedFileId );
使用されていません - 非推奨のRemoteStorageベースのワークショップAPIとのみ使用。
戻り値: SteamAPICall_tは
RemoteStorageUnsubscribePublishedFileResult_tの呼び出し結果と使われます。
UpdatePublishedFileDescription
bool UpdatePublishedFileDescription( PublishedFileUpdateHandle_t updateHandle, const char *pchDescription );
使用されていません - 非推奨のRemoteStorageベースのワークショップAPIとのみ使用。
戻り値: bool
UpdatePublishedFileFile
bool UpdatePublishedFileFile( PublishedFileUpdateHandle_t updateHandle, const char *pchFile );
使用されていません - 非推奨のRemoteStorageベースのワークショップAPIとのみ使用。
戻り値: bool
UpdatePublishedFilePreviewFile
bool UpdatePublishedFilePreviewFile( PublishedFileUpdateHandle_t updateHandle, const char *pchPreviewFile );
使用されていません - 非推奨のRemoteStorageベースのワークショップAPIとのみ使用。
戻り値: bool
UpdatePublishedFileSetChangeDescription
bool UpdatePublishedFileSetChangeDescription( PublishedFileUpdateHandle_t updateHandle, const char *pchChangeDescription );
使用されていません - 非推奨のRemoteStorageベースのワークショップAPIとのみ使用。
戻り値: bool
UpdatePublishedFileTags
bool UpdatePublishedFileTags( PublishedFileUpdateHandle_t updateHandle, SteamParamStringArray_t *pTags );
使用されていません - 非推奨のRemoteStorageベースのワークショップAPIとのみ使用。
戻り値: bool
UpdatePublishedFileTitle
bool UpdatePublishedFileTitle( PublishedFileUpdateHandle_t updateHandle, const char *pchTitle );
使用されていません - 非推奨のRemoteStorageベースのワークショップAPIとのみ使用。
戻り値: bool
UpdatePublishedFileVisibility
bool UpdatePublishedFileVisibility( PublishedFileUpdateHandle_t updateHandle, ERemoteStoragePublishedFileVisibility eVisibility );
使用されていません - 非推奨のRemoteStorageベースのワークショップAPIとのみ使用。
戻り値: bool
UpdateUserPublishedItemVote
SteamAPICall_t UpdateUserPublishedItemVote( PublishedFileId_t unPublishedFileId, bool bVoteUp );
使用されていません - 非推奨のRemoteStorageベースのワークショップAPIとのみ使用。
戻り値: SteamAPICall_tは
RemoteStorageUpdateUserPublishedItemVoteResult_tの呼び出し結果と使われます。
コールバック
以下は
SteamAPI_RunCallbacksを呼び出すことで実行されるコールバックです。 これらの多くは
ISteamRemoteStorage
のメンバー関数への応答として直接実行されます。
RemoteStorageAppSyncedClient_t
使用されていません - PS3のみ。
RemoteStorageAppSyncedServer_t
使用されていません - PS3のみ。
RemoteStorageAppSyncProgress_t
使用されていません - PS3のみ。
名前 | 型 | 説明 |
m_rgchCurrentFile | char[k_cchFilenameMax] | 転送中の現在のファイル。 |
m_nAppID | AppId_t | この情報が関連するアプリ |
m_uBytesTransferredThisChunk | uint32 | このチャンクで転送されたバイト。 |
m_dAppPercentComplete | double | このアプリの転送が完了している割合 |
m_bUploading | bool | falseの場合は、ダウンロード |
RemoteStorageAppSyncStatusCheck_t
使用されていません - PS3のみ。
RemoteStorageDeletePublishedFileResult_t
使用されていません - 非推奨のRemoteStorageベースのワークショップAPIとのみ使用。
関連する関数: DeletePublishedFileRemoteStorageDownloadUGCResult_t
関連する関数: UGCDownload,
UGCDownloadToLocationRemoteStorageEnumeratePublishedFilesByUserActionResult_t
使用されていません - 非推奨のRemoteStorageベースのワークショップAPIとのみ使用。
関連する関数: EnumeratePublishedFilesByUserActionRemoteStorageEnumerateUserPublishedFilesResult_t
使用されていません - 非推奨のRemoteStorageベースのワークショップAPIとのみ使用。
関連する関数: EnumerateUserPublishedFiles,
EnumerateUserSharedWorkshopFilesRemoteStorageEnumerateUserSharedWorkshopFilesResult_t
使用されていません - 非推奨のRemoteStorageベースのワークショップAPIとのみ使用。
RemoteStorageEnumerateUserSubscribedFilesResult_t
使用されていません - 非推奨のRemoteStorageベースのワークショップAPIとのみ使用。
関連する関数: EnumerateUserSubscribedFilesRemoteStorageEnumerateWorkshopFilesResult_t
使用されていません - 非推奨のRemoteStorageベースのワークショップAPIとのみ使用。
関連する関数: EnumeratePublishedWorkshopFilesRemoteStorageFileReadAsyncComplete_t
FileReadAsyncを使用してファイルを非同期で読み取るときの応答です。
関連する関数: FileReadAsyncRemoteStorageFileShareResult_t
関連する関数: FileShareRemoteStorageFileWriteAsyncComplete_t
FileWriteAsyncを使用してファイルを非同期で書き込むときの応答です。
名前 | 型 | 説明 |
m_eResult | EResult | オペレーションの結果。 ローカル書き込みが成功した場合、これはk_EResultOKになります。その他の値はファイル名が無効であるか、要求された書き込みが使用可能なクォータを超過したことを意味します。 このサイズを超過するファイルを書き込もうとすると、k_EResultInvalidParamのEResultが返されます。 クラウドへのファイルの書き込み制限は100MiBです。 |
関連する関数: FileWriteAsyncRemoteStorageGetPublishedFileDetailsResult_t
使用されていません - 非推奨のRemoteStorageベースのワークショップAPIとのみ使用。
関連する関数: GetPublishedFileDetailsRemoteStorageGetPublishedItemVoteDetailsResult_t
使用されていません - 非推奨のRemoteStorageベースのワークショップAPIとのみ使用。
関連する関数: GetPublishedItemVoteDetails,
GetUserPublishedItemVoteDetailsRemoteStorageLocalFileChange_t
Steamアプリが動的Steamクラウド同期をサポートしているとフラグが付けるられている場合、ローカルファイルに変更があるとこのコールバックがアプリにポストされます。
関連する関数: GetLocalFileChangeCount,
GetLocalFileChangeRemoteStoragePublishedFileDeleted_t
使用されていません - 非推奨のRemoteStorageベースのワークショップAPIとのみ使用。
RemoteStoragePublishedFileSubscribed_t
RemoteStoragePublishedFileUnsubscribed_t
RemoteStoragePublishedFileUpdated_t
使用されていません - 非推奨のRemoteStorageベースのワークショップAPIとのみ使用。
RemoteStoragePublishFileProgress_t
使用されていません - 非推奨のRemoteStorageベースのワークショップAPIとのみ使用。
名前 | 型 | 説明 |
m_dPercentFile | double | |
m_bPreview | bool | |
関連する関数: PublishWorkshopFile,
PublishVideoRemoteStoragePublishFileResult_t
使用されていません - 非推奨のRemoteStorageベースのワークショップAPIとのみ使用。
RemoteStorageSetUserPublishedFileActionResult_t
使用されていません - 非推奨のRemoteStorageベースのワークショップAPIとのみ使用。
関連する関数: SetUserPublishedFileActionRemoteStorageSubscribePublishedFileResult_t
ユーザーがUGCをサブスクライブした時に呼び出されます。
ISteamUGC::SubscribeItemからの結果。
関連する関数: SubscribePublishedFileRemoteStorageUnsubscribePublishedFileResult_t
ユーザーがUGCをサブスクライブ解除した時に呼び出されます。
ISteamUGC::UnsubscribeItemからの結果。
関連する関数: UnsubscribePublishedFileRemoteStorageUpdatePublishedFileResult_t
使用されていません - 非推奨のRemoteStorageベースのワークショップAPIとのみ使用。
関連する関数: CommitPublishedFileUpdateRemoteStorageUpdateUserPublishedItemVoteResult_t
使用されていません - 非推奨のRemoteStorageベースのワークショップAPIとのみ使用。
関連する関数: UpdateUserPublishedItemVoteRemoteStorageUserVoteDetails_t
使用されていません - 非推奨のRemoteStorageベースのワークショップAPIとのみ使用。
構造体
これは ISteamRemoteStorage 内の関数が返す、またはやりとりする構造体です。
SteamParamStringArray_t
名前 | 型 | 説明 |
m_ppStrings | const char ** | 文字列の配列。 |
m_nNumStrings | int32 | [param]m_ppStrings[/param]内の文字列の数。 |
列挙型
これらはISteamRemoteStorageで使用するために定義された列挙型です。
ERemoteStorageLocalFileChange
アプリケーションのセッション中に、Steamによってローカルファイルが変更される可能性のある方法。
GetLocalFileChangeを参照してください。
名前 | 値 | 説明 |
k_ERemoteStorageLocalFileChange_Invalid | 0 | 未使用。 |
k_ERemoteStorageLocalFileChange_FileUpdated | 1 | 変更されたファイルコンテンツ。 |
k_ERemoteStorageLocalFileChange_FileDeleted | 2 | ファイルは削除されました。 |
ERemoteStorageFilePathType
異なる形式でファイルパスを返す可能性のあるAPI用。
GetLocalFileChangeを参照してください。
名前 | 値 | 説明 |
k_ERemoteStorageFilePathType_Invalid | 0 | 未使用。 |
k_ERemoteStorageFilePathType_Absolute | 1 | 絶対ディスクパスが提供されます。 このタイプのパスは、AutoCloud経由で管理されるファイルに使用されます。 |
k_ERemoteStorageFilePathType_APIFilename | 2 | ISteamRemoteStorage API相対パスが提供されます。 このタイプのパスは、 ISteamRemoteStorage APIメソッド(FileWrite, FileRead, etc)経由で管理されるファイルに使用されます。 |
ERemoteStoragePlatform
同期プラットフォームのフラグ。 これらは、特定のOSに制限するために、
SetSyncPlatformsと使用できます。
名前 | 値 | 説明 |
k_ERemoteStoragePlatformNone | 0 | このファイルはどのプラットフォームにもダウンロードされません。 |
k_ERemoteStoragePlatformWindows | (1 << 0) | このファイルはWindowsにダウンロードされます。 |
k_ERemoteStoragePlatformOSX | (1 << 1) | このファイルはmacOSにダウンロードされます。 |
k_ERemoteStoragePlatformPS3 | (1 << 2) | このファイルはPlaystation 3にダウンロードされます。 |
k_ERemoteStoragePlatformLinux | (1 << 3) | このファイルはSteamOS/Linuxにダウンロードされます。 |
k_ERemoteStoragePlatformReserved2 | (1 << 4) | 予約済み。 |
k_ERemoteStoragePlatformAll | 0xffffffff | このファイルはどのプラットフォームにもダウンロードされます。 これはデフォルトです。 |
ERemoteStoragePublishedFileVisibility
ワークショップアイテムで可能な表示状態
名前 | 値 | 説明 |
k_ERemoteStoragePublishedFileVisibilityPublic | 0 | 全員に表示。 |
k_ERemoteStoragePublishedFileVisibilityFriendsOnly | 1 | フレンドのみに表示。 |
k_ERemoteStoragePublishedFileVisibilityPrivate | 2 | 作成者のみに表示。 アイテムを非公開に設定することが、APIからワークショップアイテムを削除することに最も近いです。 |
k_ERemoteStoragePublishedFileVisibilityUnlisted | 3 | 全員に表示されますが、グローバルクエリでは返されません。 呼び出し元が作成者または購読者でない限り、ユーザー リストで返されることはありません。 |
EUGCReadAction
UGCReadと使う可能なUGC読み込みアクション。
名前 | 値 | 説明 |
k_EUGCRead_ContinueReadingUntilFinished | 0 | 最後のバイトが読み取られない限り、ファイルのハンドルを開いたままにします。 連続したチャンクで大きなファイル(100MB以上)を読み取るときに使用できます。 最後のバイトが読み取られた場合、これはk_EUGCRead_Closeと同じように機能します。 それ以外はk_EUGCRead_ContinueReadingと同じように機能します。 この値は、EUGCReadActionパラメーターの導入前と同様に機能します。 |
k_EUGCRead_ContinueReading | 1 | ファイルハンドルを開いたままにします。 ファイルの異なる部分をUGCReadを使って探す時に使用します。 ファイル内の探索が終了したら、k_EUGCRead_Closeを使用してファイルを閉じます。 |
k_EUGCRead_Close | 2 | ファイルハンドルを解放します。 コンテンツの読み取りが終わったらこれを使用します。 Steamからファイルを再度読み取るには、 再度UGCDownloadを呼び出す必要があります。 |
EWorkshopEnumerationType
使用されていません - 非推奨のRemoteStorageベースのワークショップAPIとのみ使用。
名前 | 値 | 説明 |
k_EWorkshopEnumerationTypeRankedByVote | 0 | |
k_EWorkshopEnumerationTypeRecent | 1 | |
k_EWorkshopEnumerationTypeTrending | 2 | |
k_EWorkshopEnumerationTypeFavoritesOfFriends | 3 | |
k_EWorkshopEnumerationTypeVotedByFriends | 4 | |
k_EWorkshopEnumerationTypeContentByFriends | 5 | |
k_EWorkshopEnumerationTypeRecentFromFollowedUsers | 6 | |
EWorkshopFileAction
使用されていません - 非推奨のRemoteStorageベースのワークショップAPIとのみ使用。
名前 | 値 | 説明 |
k_EWorkshopFileActionPlayed | 0 | ユーザーはこのアイテムを、またはこのアイテムとプレイしました。 (例、武器またはレベルをロードした。) |
k_EWorkshopFileActionCompleted | 1 | ユーザーがこのアイテムを完了した。 (例、線形マップの最後にたどり着いた。) |
EWorkshopFileType
共有ファイルがコミュニティと共有される方法。
名前 | 値 | 説明 |
k_EWorkshopFileTypeFirst | 0 | 列挙にのみ使用されます。 |
k_EWorkshopFileTypeMicrotransaction | 1 | ゲーム内販売を目的とした投票があるワークショップ。 (キュレーションされたワークショップを参照) |
k_EWorkshopFileTypeCollection | 2 | ワークショップアイテムのコレクション。 |
k_EWorkshopFileTypeArt | 3 | アートワーク。 |
k_EWorkshopFileTypeVideo | 4 | 外部動画。 |
k_EWorkshopFileTypeScreenshot | 5 | スクリーンショット。 |
k_EWorkshopFileTypeGame | 6 | 未使用。以前、グリーンライトゲームエントリーにて使用。 |
k_EWorkshopFileTypeSoftware | 7 | 未使用。以前、グリーンライトソフトウェアエントリーにて使用。 |
k_EWorkshopFileTypeConcept | 8 | 未使用。以前、グリーンライトコンセプトにて使用。 |
k_EWorkshopFileTypeWebGuide | 9 | Steamウェブガイド。 |
k_EWorkshopFileTypeIntegratedGuide | 10 | アプリケーション統合ガイド。 |
k_EWorkshopFileTypeMerch | 11 | 販売を目的とした投票があるワークショップ商品。 |
k_EWorkshopFileTypeControllerBinding | 12 | Steamコントローラバインド。 |
k_EWorkshopFileTypeSteamworksAccessInvite | 13 | Steam内でのみ使用されます。 |
k_EWorkshopFileTypeSteamVideo | 14 | Steam動画。 |
k_EWorkshopFileTypeGameManagedItem | 15 | ユーザーによってではなく、ゲームによって完全に管理され、ウェブでは表示されません。 |
k_EWorkshopFileTypeMax | 16 | 列挙にのみ使用されます。 |
EWorkshopVideoProvider
使用されていません - 非推奨のRemoteStorageベースのワークショップAPIとのみ使用。
名前 | 値 | 説明 |
k_EWorkshopVideoProviderNone | 0 | このアイテムには動画はありません。 |
k_EWorkshopVideoProviderYoutube | 1 | このアイテムにはYouTube動画があります。 |
EWorkshopVote
使用されていません - 非推奨のRemoteStorageベースのワークショップAPIとのみ使用。
名前 | 値 | 説明 |
k_EWorkshopVoteUnvoted | 0 | ユーザーは投票していません。 |
k_EWorkshopVoteFor | 1 | ユーザーはこのアイテムに賛成票を投じました。 |
k_EWorkshopVoteAgainst | 2 | ユーザーはこのアイテムに反対票を投じました。 |
k_EWorkshopVoteLater | 3 | ユーザーは後で投票することを選択しました。 |
Typedefs
これらはISteamRemoteStorageで使用するために定義されたtypedefsです。
名前 | ベース型 | 説明 |
PublishedFileId_t | uint64 | 個々のワークショップアイテムのユニークなハンドル。 |
PublishedFileUpdateHandle_t | uint64 | 使用されていません - 非推奨のRemoteStorageベースのワークショップAPIとのみ使用。 |
UGCFileWriteStreamHandle_t | uint64 | Steamクラウドへの非同期書き込みの際に使用されるハンドル。 |
UGCHandle_t | uint64 | ユーザー生成コンテンツへの一意のハンドル。 |
定数
これらはISteamRemoteStorageで使用するために定義された定数です。
名前 | 型 | 値 | 説明 |
k_cchFilenameMax | uint32 | 260 | Steamクラウドファイルパスが取れる最大の長さ。 |
k_cchPublishedDocumentChangeDescriptionMax | uint32 | 8000 | 未使用。 |
k_cchPublishedDocumentDescriptionMax | uint32 | 8000 | ワークショップアイテムの説明の最大サイズ(バイト単位。) |
k_cchPublishedDocumentTitleMax | uint32 | 128 + 1 | ワークショップアイテムのタイトルの最大サイズ(バイト単位。) |
k_cchPublishedFileURLMax | uint32 | 256 | ワークショップアイテムのURLの最大サイズ(バイト単位。) |
k_cchTagListMax | uint32 | 1024 + 1 | ワークショップアイテムのコンマ区切りのタグリストの最大サイズ(バイト単位。) |
k_PublishedFileIdInvalid | PublishedFileId_t | 0 | 無効なワークショップアイテムハンドル。 |
k_PublishedFileUpdateHandleInvalid | PublishedFileUpdateHandle_t | 0xffffffffffffffffull | 使用されていません - 非推奨のRemoteStorageベースのワークショップAPIとのみ使用。 |
k_UGCFileStreamHandleInvalid | UGCFileWriteStreamHandle_t | 0xffffffffffffffffull | FileWriteStreamOpen使用時にエラーが発生すると返されます。 |
k_UGCHandleInvalid | UGCHandle_t | 0xffffffffffffffffull | 無効なUGCハンドル。 多くの場合、エラーを示す関数によって返されます。 |
k_unEnumeratePublishedFilesMaxResults | uint32 | 50 | 使用されていません - 非推奨のRemoteStorageベースのワークショップAPIとのみ使用。 |
k_unMaxCloudFileChunkSize | uint32 | 100 * 1024 * 1024 | Steamクラウドの最大許容ファイルサイズを定義します。 クラウドファイルは、100MiBを超える単一のチャンクに書き込むことはできず、合計で200MiBを超えることはできません。 |
STEAMREMOTESTORAGE_INTERFACE_VERSION | const char * | "STEAMREMOTESTORAGE_INTERFACE_VERSION014" | |