4 const u32 k_unMaxCloudFileChunkSize
= 100 * 1024 * 1024;
6 #if defined( VALVE_CALLBACK_PACK_SMALL )
7 #pragma pack( push, 4 )
8 #elif defined( VALVE_CALLBACK_PACK_LARGE )
9 #pragma pack( push, 8 )
11 #error steam_api_common.h should define VALVE_CALLBACK_PACK_xxx
13 typedef struct SteamParamStringArray_t SteamParamStringArray_t
;
14 struct SteamParamStringArray_t
{
15 const char **m_ppStrings
;
20 /* A handle to a piece of user generated content */
21 typedef void ISteamRemoteStorage
;
22 typedef u64 UGCHandle_t
;
23 typedef u64 PublishedFileUpdateHandle_t
;
24 typedef u64 PublishedFileId_t
;
25 const PublishedFileId_t k_PublishedFileIdInvalid
= 0;
26 const UGCHandle_t k_UGCHandleInvalid
= 0xffffffffffffffffull
;
27 const PublishedFileUpdateHandle_t
28 k_PublishedFileUpdateHandleInvalid
= 0xffffffffffffffffull
;
30 /* Handle for writing to Steam Cloud */
31 typedef u64 UGCFileWriteStreamHandle_t
;
32 const UGCFileWriteStreamHandle_t
33 k_UGCFileStreamHandleInvalid
= 0xffffffffffffffffull
;
35 enum{ k_cchPublishedDocumentTitleMax
= 128 + 1 };
36 enum{ k_cchPublishedDocumentDescriptionMax
= 8000 };
37 enum{ k_cchPublishedDocumentChangeDescriptionMax
= 8000 };
38 enum{ k_unEnumeratePublishedFilesMaxResults
= 50 };
39 enum{ k_cchTagListMax
= 1024 + 1 };
40 enum{ k_cchFilenameMax
= 260 };
41 enum{ k_cchPublishedFileURLMax
= 256 };
43 typedef enum ERemoteStoragePlatform ERemoteStoragePlatform
;
44 enum ERemoteStoragePlatform
{
45 k_ERemoteStoragePlatformNone
= 0,
46 k_ERemoteStoragePlatformWindows
= (1 << 0),
47 k_ERemoteStoragePlatformOSX
= (1 << 1),
48 k_ERemoteStoragePlatformPS3
= (1 << 2),
49 k_ERemoteStoragePlatformLinux
= (1 << 3),
50 k_ERemoteStoragePlatformSwitch
= (1 << 4),
51 k_ERemoteStoragePlatformAndroid
= (1 << 5),
52 k_ERemoteStoragePlatformIOS
= (1 << 6),
54 /* NB we get one more before we need to widen some things */
55 k_ERemoteStoragePlatformAll
= 0xffffffff
58 typedef enum ERemoteStoragePublishedFileVisibility
59 ERemoteStoragePublishedFileVisibility
;
60 enum ERemoteStoragePublishedFileVisibility
{
61 k_ERemoteStoragePublishedFileVisibilityPublic
= 0,
62 k_ERemoteStoragePublishedFileVisibilityFriendsOnly
= 1,
63 k_ERemoteStoragePublishedFileVisibilityPrivate
= 2,
64 k_ERemoteStoragePublishedFileVisibilityUnlisted
= 3,
68 typedef enum EWorkshopFileType EWorkshopFileType
;
69 enum EWorkshopFileType
{
70 k_EWorkshopFileTypeFirst
= 0,
71 k_EWorkshopFileTypeCommunity
= 0,
72 k_EWorkshopFileTypeMicrotransaction
= 1,
73 k_EWorkshopFileTypeCollection
= 2,
74 k_EWorkshopFileTypeArt
= 3,
75 k_EWorkshopFileTypeVideo
= 4,
76 k_EWorkshopFileTypeScreenshot
= 5,
77 k_EWorkshopFileTypeGame
= 6,
78 k_EWorkshopFileTypeSoftware
= 7,
79 k_EWorkshopFileTypeConcept
= 8,
80 k_EWorkshopFileTypeWebGuide
= 9,
81 k_EWorkshopFileTypeIntegratedGuide
= 10,
82 k_EWorkshopFileTypeMerch
= 11,
83 k_EWorkshopFileTypeControllerBinding
= 12,
84 k_EWorkshopFileTypeSteamworksAccessInvite
= 13,
85 k_EWorkshopFileTypeSteamVideo
= 14,
86 k_EWorkshopFileTypeGameManagedItem
= 15,
87 k_EWorkshopFileTypeMax
= 16
90 typedef enum EWorkshopVote EWorkshopVote
;
92 k_EWorkshopVoteUnvoted
= 0,
93 k_EWorkshopVoteFor
= 1,
94 k_EWorkshopVoteAgainst
= 2,
95 k_EWorkshopVoteLater
= 3,
98 typedef enum EWorkshopFileAction EWorkshopFileAction
;
99 enum EWorkshopFileAction
{
100 k_EWorkshopFileActionPlayed
= 0,
101 k_EWorkshopFileActionCompleted
= 1,
104 typedef enum EWorkshopEnumerationType EWorkshopEnumerationType
;
105 enum EWorkshopEnumerationType
{
106 k_EWorkshopEnumerationTypeRankedByVote
= 0,
107 k_EWorkshopEnumerationTypeRecent
= 1,
108 k_EWorkshopEnumerationTypeTrending
= 2,
109 k_EWorkshopEnumerationTypeFavoritesOfFriends
= 3,
110 k_EWorkshopEnumerationTypeVotedByFriends
= 4,
111 k_EWorkshopEnumerationTypeContentByFriends
= 5,
112 k_EWorkshopEnumerationTypeRecentFromFollowedUsers
= 6,
115 typedef enum EWorkshopVideoProvider EWorkshopVideoProvider
;
116 enum EWorkshopVideoProvider
{
117 k_EWorkshopVideoProviderNone
= 0,
118 k_EWorkshopVideoProviderYoutube
= 1
121 typedef enum EUGCReadAction EUGCReadAction
;
123 k_EUGCRead_ContinueReadingUntilFinished
= 0,
124 k_EUGCRead_ContinueReading
= 1,
125 k_EUGCRead_Close
= 2,
128 typedef enum ERemoteStorageLocalFileChange ERemoteStorageLocalFileChange
;
129 enum ERemoteStorageLocalFileChange
{
130 k_ERemoteStorageLocalFileChange_Invalid
= 0,
131 k_ERemoteStorageLocalFileChange_FileUpdated
= 1,
132 k_ERemoteStorageLocalFileChange_FileDeleted
= 2,
135 typedef enum ERemoteStorageFilePathType ERemoteStorageFilePathType
;
136 enum ERemoteStorageFilePathType
{
137 k_ERemoteStorageFilePathType_Invalid
= 0,
138 k_ERemoteStorageFilePathType_Absolute
= 1,
139 k_ERemoteStorageFilePathType_APIFilename
= 2,
142 #define STEAMREMOTESTORAGE_INTERFACE_VERSION \
143 "STEAMREMOTESTORAGE_INTERFACE_VERSION016"
145 #if defined( VALVE_CALLBACK_PACK_SMALL )
146 #pragma pack( push, 4 )
147 #elif defined( VALVE_CALLBACK_PACK_LARGE )
148 #pragma pack( push, 8 )
150 #error steam_api_common.h should define VALVE_CALLBACK_PACK_xxx
153 typedef struct RemoteStorageFileShareResult_t RemoteStorageFileShareResult_t
;
154 struct RemoteStorageFileShareResult_t
{
157 char m_rgchFilename
[k_cchFilenameMax
];
159 enum { k_iRemoteStorageFileShareResult
= k_iSteamRemoteStorageCallbacks
+ 7 };
161 typedef struct RemoteStoragePublishFileResult_t
162 RemoteStoragePublishFileResult_t
;
163 struct RemoteStoragePublishFileResult_t
{
165 PublishedFileId_t m_nPublishedFileId
;
166 steamapi_bool m_bUserNeedsToAcceptWorkshopLegalAgreement
;
168 enum { k_iRemoteStoragePublushFileResult
= k_iSteamRemoteStorageCallbacks
+ 9 };
170 typedef struct RemoteStorageDeletePublishedFileResult_t
171 RemoteStorageDeletePublishedFileResult_t
;
172 struct RemoteStorageDeletePublishedFileResult_t
{
174 PublishedFileId_t m_nPublishedFileId
;
176 enum { k_iRemoteStorageDeletePublishedFileResult
=
177 k_iSteamRemoteStorageCallbacks
+ 11 };
179 typedef struct RemoteStorageEnumerateUserPublishedFilesResult_t
180 RemoteStorageEnumerateUserPublishedFilesResult_t
;
181 struct RemoteStorageEnumerateUserPublishedFilesResult_t
{
183 i32 m_nResultsReturned
;
184 i32 m_nTotalResultCount
;
185 PublishedFileId_t m_rgPublishedFileId
[k_unEnumeratePublishedFilesMaxResults
];
187 enum { k_iRemoteStorageEnumerateUserPublishedFilesResult
=
188 k_iSteamRemoteStorageCallbacks
+ 12 };
190 typedef struct RemoteStorageSubscribePublishedFileResult_t
191 RemoteStorageSubscribePublishedFileResult_t
;
192 struct RemoteStorageSubscribePublishedFileResult_t
{
194 PublishedFileId_t m_nPublishedFileId
;
196 enum { k_iRemoteStorageSubscribePublishedFileResult
=
197 k_iSteamRemoteStorageCallbacks
+ 13 };
200 typedef struct RemoteStorageEnumerateUserSubscribedFilesResult_t
201 RemoteStorageEnumerateUserSubscribedFilesResult_t
;
202 struct RemoteStorageEnumerateUserSubscribedFilesResult_t
{
204 i32 m_nResultsReturned
;
205 i32 m_nTotalResultCount
;
206 PublishedFileId_t m_rgPublishedFileId
[k_unEnumeratePublishedFilesMaxResults
];
207 u32 m_rgRTimeSubscribed
[ k_unEnumeratePublishedFilesMaxResults
];
209 enum { k_iRemoteStorageEnumerateUserSubscribedFilesResult
=
210 k_iSteamRemoteStorageCallbacks
+ 14 };
212 typedef struct RemoteStorageUnsubscribePublishedFileResult_t
213 RemoteStorageUnsubscribePublishedFileResult_t
;
214 struct RemoteStorageUnsubscribePublishedFileResult_t
{
216 PublishedFileId_t m_nPublishedFileId
;
218 enum { k_iRemoteStorageUnsubscribePublishedFileResult
=
219 k_iSteamRemoteStorageCallbacks
+ 15 };
221 typedef struct RemoteStorageUpdatePublishedFileResult_t
222 RemoteStorageUpdatePublishedFileResult_t
;
223 struct RemoteStorageUpdatePublishedFileResult_t
{
225 PublishedFileId_t m_nPublishedFileId
;
226 steamapi_bool m_bUserNeedsToAcceptWorkshopLegalAgreement
;
228 enum { k_iRemoteStorageUpdatePublishedFileResult
=
229 k_iSteamRemoteStorageCallbacks
+ 16 };
232 typedef struct RemoteStorageDownloadUGCResult_t
233 RemoteStorageDownloadUGCResult_t
;
234 struct RemoteStorageDownloadUGCResult_t
{
239 char m_pchFileName
[k_cchFilenameMax
];
240 u64 m_ulSteamIDOwner
;
242 enum { k_iRemoteStorageDownloadUGCResult
=
243 k_iSteamRemoteStorageCallbacks
+ 17 };
246 typedef struct RemoteStorageGetPublishedFileDetailsResult_t
247 RemoteStorageGetPublishedFileDetailsResult_t
;
248 struct RemoteStorageGetPublishedFileDetailsResult_t
{
250 PublishedFileId_t m_nPublishedFileId
;
251 AppId_t m_nCreatorAppID
;
252 AppId_t m_nConsumerAppID
;
253 char m_rgchTitle
[k_cchPublishedDocumentTitleMax
];
254 char m_rgchDescription
[k_cchPublishedDocumentDescriptionMax
];
256 UGCHandle_t m_hPreviewFile
;
257 u64 m_ulSteamIDOwner
;
260 ERemoteStoragePublishedFileVisibility m_eVisibility
;
261 steamapi_bool m_bBanned
;
262 char m_rgchTags
[k_cchTagListMax
];
263 steamapi_bool m_bTagsTruncated
;
264 char m_pchFileName
[k_cchFilenameMax
];
266 i32 m_nPreviewFileSize
;
267 char m_rgchURL
[k_cchPublishedFileURLMax
];
268 EWorkshopFileType m_eFileType
;
269 steamapi_bool m_bAcceptedForUse
;
271 enum { k_iRemoteStorageGetPublishedFileDetailsResult
=
272 k_iSteamRemoteStorageCallbacks
+ 18 };
274 typedef struct RemoteStorageEnumerateWorkshopFilesResult_t
275 RemoteStorageEnumerateWorkshopFilesResult_t
;
276 struct RemoteStorageEnumerateWorkshopFilesResult_t
{
278 i32 m_nResultsReturned
;
279 i32 m_nTotalResultCount
;
280 PublishedFileId_t m_rgPublishedFileId
[k_unEnumeratePublishedFilesMaxResults
];
281 float m_rgScore
[ k_unEnumeratePublishedFilesMaxResults
];
285 enum { k_iRemoteStorageEnumerateWorkshopFilesResult_t
=
286 k_iSteamRemoteStorageCallbacks
+ 19 };
289 typedef struct RemoteStorageGetPublishedItemVoteDetailsResult_t
290 RemoteStorageGetPublishedItemVoteDetailsResult_t
;
291 struct RemoteStorageGetPublishedItemVoteDetailsResult_t
{
293 PublishedFileId_t m_unPublishedFileId
;
299 enum { k_iRemoteStorageGetPublishedItemVoteDetailsResult_t
=
300 k_iSteamRemoteStorageCallbacks
+ 20 };
303 typedef struct RemoteStoragePublishedFileSubscribed_t
304 RemoteStoragePublishedFileSubscribed_t
;
305 struct RemoteStoragePublishedFileSubscribed_t
{
306 PublishedFileId_t m_nPublishedFileId
;
309 enum { k_iRemoteStoragePublishedFileSubscribed_t
=
310 k_iSteamRemoteStorageCallbacks
+ 21 };
312 typedef struct RemoteStoragePublishedFileUnsubscribed_t
313 RemoteStoragePublishedFileUnsubscribed_t
;
314 struct RemoteStoragePublishedFileUnsubscribed_t
{
315 PublishedFileId_t m_nPublishedFileId
;
318 enum { k_iRemoteStoragePublishedFileUnsubscribed_t
=
319 k_iSteamRemoteStorageCallbacks
+ 22 };
322 typedef struct RemoteStoragePublishedFileDeleted_t
323 RemoteStoragePublishedFileDeleted_t
;
324 struct RemoteStoragePublishedFileDeleted_t
{
325 PublishedFileId_t m_nPublishedFileId
;
328 enum { k_iRemoteStoragePublishedFileDeleted_t
=
329 k_iSteamRemoteStorageCallbacks
+ 23 };
331 typedef struct RemoteStorageUpdateUserPublishedItemVoteResult_t
332 RemoteStorageUpdateUserPublishedItemVoteResult_t
;
333 struct RemoteStorageUpdateUserPublishedItemVoteResult_t
{
335 PublishedFileId_t m_nPublishedFileId
;
337 enum { k_iRemoteStorageUpdateUserPublishedItemVoteResult_t
=
338 k_iSteamRemoteStorageCallbacks
+ 24 };
340 typedef struct RemoteStorageUserVoteDetails_t RemoteStorageUserVoteDetails_t
;
341 struct RemoteStorageUserVoteDetails_t
{
343 PublishedFileId_t m_nPublishedFileId
;
344 EWorkshopVote m_eVote
;
346 enum { k_iRemoteStorageUserVoteDetails_t
=
347 k_iSteamRemoteStorageCallbacks
+ 25 };
349 typedef struct RemoteStorageEnumerateUserSharedWorkshopFilesResult_t
350 RemoteStorageEnumerateUserSharedWorkshopFilesResult_t
;
351 struct RemoteStorageEnumerateUserSharedWorkshopFilesResult_t
{
353 i32 m_nResultsReturned
;
354 i32 m_nTotalResultCount
;
355 PublishedFileId_t m_rgPublishedFileId
[k_unEnumeratePublishedFilesMaxResults
];
357 enum { k_iRemoteStorageEnumerateUserSharedWorkshopFilesResult_t
=
358 k_iSteamRemoteStorageCallbacks
+ 26 };
360 typedef struct RemoteStorageSetUserPublishedFileActionResult_t
361 RemoteStorageSetUserPublishedFileActionResult_t
;
362 struct RemoteStorageSetUserPublishedFileActionResult_t
{
364 PublishedFileId_t m_nPublishedFileId
;
365 EWorkshopFileAction m_eAction
;
367 enum { k_iRemoteStorageSetUserPublishedFileActionResult_t
=
368 k_iSteamRemoteStorageCallbacks
+ 27 };
370 typedef struct RemoteStorageEnumeratePublishedFilesByUserActionResult_t
371 RemoteStorageEnumeratePublishedFilesByUserActionResult_t
;
372 struct RemoteStorageEnumeratePublishedFilesByUserActionResult_t
{
374 EWorkshopFileAction m_eAction
;
375 i32 m_nResultsReturned
;
376 i32 m_nTotalResultCount
;
377 PublishedFileId_t m_rgPublishedFileId
[k_unEnumeratePublishedFilesMaxResults
];
378 u32 m_rgRTimeUpdated
[ k_unEnumeratePublishedFilesMaxResults
];
380 enum { k_iRemoteStorageEnumeratePublishedFilesByUserActionResult_t
=
381 k_iSteamRemoteStorageCallbacks
+ 28 };
383 typedef struct RemoteStoragePublishFileProgress_t
384 RemoteStoragePublishFileProgress_t
;
385 struct RemoteStoragePublishFileProgress_t
{
386 double m_dPercentFile
;
387 steamapi_bool m_bPreview
;
389 enum { k_iRemoteStoragePublishFileProgress_t
=
390 k_iSteamRemoteStorageCallbacks
+ 29 };
392 typedef struct RemoteStoragePublishedFileUpdated_t
393 RemoteStoragePublishedFileUpdated_t
;
394 struct RemoteStoragePublishedFileUpdated_t
{
395 PublishedFileId_t m_nPublishedFileId
;
399 enum { k_iRemoteStoragePublishedFileUpdated_t
=
400 k_iSteamRemoteStorageCallbacks
+ 30 };
402 typedef struct RemoteStorageFileWriteAsyncComplete_t
403 RemoteStorageFileWriteAsyncComplete_t
;
404 struct RemoteStorageFileWriteAsyncComplete_t
{
407 enum { k_iRemoteStorageFileWriteAsyncComplete_t
=
408 k_iSteamRemoteStorageCallbacks
+ 31 };
410 typedef struct RemoteStorageFileReadAsyncComplete_t
411 RemoteStorageFileReadAsyncComplete_t
;
412 struct RemoteStorageFileReadAsyncComplete_t
{
413 SteamAPICall_t m_hFileReadAsync
;
418 enum { k_iRemoteStorageFileReadAsyncComplete_t
=
419 k_iSteamRemoteStorageCallbacks
+ 32 };
423 ISteamRemoteStorage
*SteamAPI_SteamRemoteStorage_v016();
424 static inline ISteamRemoteStorage
*SteamAPI_SteamRemoteStorage()
426 return SteamAPI_SteamRemoteStorage_v016();
429 steamapi_bool
SteamAPI_ISteamRemoteStorage_FileWrite( ISteamRemoteStorage
* self
,
430 const char * pchFile
, const void * pvData
, i32 cubData
);
431 i32
SteamAPI_ISteamRemoteStorage_FileRead( ISteamRemoteStorage
* self
,
432 const char * pchFile
, void * pvData
, i32 cubDataToRead
);
433 SteamAPICall_t
SteamAPI_ISteamRemoteStorage_FileWriteAsync(
434 ISteamRemoteStorage
* self
, const char * pchFile
, const void * pvData
,
436 SteamAPICall_t
SteamAPI_ISteamRemoteStorage_FileReadAsync(
437 ISteamRemoteStorage
* self
, const char * pchFile
, u32 nOffset
,
439 steamapi_bool
SteamAPI_ISteamRemoteStorage_FileReadAsyncComplete(
440 ISteamRemoteStorage
* self
, SteamAPICall_t hReadCall
, void * pvBuffer
,
442 steamapi_bool
SteamAPI_ISteamRemoteStorage_FileForget(
443 ISteamRemoteStorage
*self
, const char * pchFile
);
444 steamapi_bool
SteamAPI_ISteamRemoteStorage_FileDelete(
445 ISteamRemoteStorage
*self
, const char * pchFile
);
446 SteamAPICall_t
SteamAPI_ISteamRemoteStorage_FileShare(
447 ISteamRemoteStorage
* self
, const char * pchFile
);
448 steamapi_bool
SteamAPI_ISteamRemoteStorage_SetSyncPlatforms(
449 ISteamRemoteStorage
* self
, const char * pchFile
,
450 ERemoteStoragePlatform eRemoteStoragePlatform
);
451 UGCFileWriteStreamHandle_t
SteamAPI_ISteamRemoteStorage_FileWriteStreamOpen(
452 ISteamRemoteStorage
* self
, const char * pchFile
);
453 steamapi_bool
SteamAPI_ISteamRemoteStorage_FileWriteStreamWriteChunk(
454 ISteamRemoteStorage
* self
, UGCFileWriteStreamHandle_t writeHandle
,
455 const void * pvData
, i32 cubData
);
456 steamapi_bool
SteamAPI_ISteamRemoteStorage_FileWriteStreamClose(
457 ISteamRemoteStorage
* self
, UGCFileWriteStreamHandle_t writeHandle
);
458 steamapi_bool
SteamAPI_ISteamRemoteStorage_FileWriteStreamCancel(
459 ISteamRemoteStorage
* self
, UGCFileWriteStreamHandle_t writeHandle
);
460 steamapi_bool
SteamAPI_ISteamRemoteStorage_FileExists(
461 ISteamRemoteStorage
* self
, const char * pchFile
);
462 steamapi_bool
SteamAPI_ISteamRemoteStorage_FilePersisted(
463 ISteamRemoteStorage
* self
, const char * pchFile
);
464 i32
SteamAPI_ISteamRemoteStorage_GetFileSize( ISteamRemoteStorage
* self
,
465 const char * pchFile
);
466 i64
SteamAPI_ISteamRemoteStorage_GetFileTimestamp( ISteamRemoteStorage
* self
,
467 const char * pchFile
);
468 ERemoteStoragePlatform
SteamAPI_ISteamRemoteStorage_GetSyncPlatforms(
469 ISteamRemoteStorage
* self
, const char * pchFile
);
470 i32
SteamAPI_ISteamRemoteStorage_GetFileCount( ISteamRemoteStorage
* self
);
471 const char * SteamAPI_ISteamRemoteStorage_GetFileNameAndSize(
472 ISteamRemoteStorage
* self
, int iFile
, i32
* pnFileSizeInBytes
);
473 steamapi_bool
SteamAPI_ISteamRemoteStorage_GetQuota( ISteamRemoteStorage
* self
,
474 u64
* pnTotalBytes
, u64
* puAvailableBytes
);
475 steamapi_bool
SteamAPI_ISteamRemoteStorage_IsCloudEnabledForAccount(
476 ISteamRemoteStorage
* self
);
477 steamapi_bool
SteamAPI_ISteamRemoteStorage_IsCloudEnabledForApp(
478 ISteamRemoteStorage
* self
);
479 void SteamAPI_ISteamRemoteStorage_SetCloudEnabledForApp(
480 ISteamRemoteStorage
* self
, steamapi_bool bEnabled
);
481 SteamAPICall_t
SteamAPI_ISteamRemoteStorage_UGCDownload(
482 ISteamRemoteStorage
* self
, UGCHandle_t hContent
, u32 unPriority
);
483 steamapi_bool
SteamAPI_ISteamRemoteStorage_GetUGCDownloadProgress(
484 ISteamRemoteStorage
* self
, UGCHandle_t hContent
, i32
* pnBytesDownloaded
,
485 i32
* pnBytesExpected
);
486 steamapi_bool
SteamAPI_ISteamRemoteStorage_GetUGCDetails(
487 ISteamRemoteStorage
* self
,
488 UGCHandle_t hContent
, AppId_t
* pnAppID
, char ** ppchName
,
489 i32
* pnFileSizeInBytes
, CSteamID
* pSteamIDOwner
);
490 i32
SteamAPI_ISteamRemoteStorage_UGCRead( ISteamRemoteStorage
* self
,
491 UGCHandle_t hContent
, void * pvData
, i32 cubDataToRead
, u32 cOffset
,
492 EUGCReadAction eAction
);
493 i32
SteamAPI_ISteamRemoteStorage_GetCachedUGCCount( ISteamRemoteStorage
* self
);
494 UGCHandle_t
SteamAPI_ISteamRemoteStorage_GetCachedUGCHandle(
495 ISteamRemoteStorage
* self
, i32 iCachedContent
);
496 SteamAPICall_t
SteamAPI_ISteamRemoteStorage_PublishWorkshopFile(
497 ISteamRemoteStorage
* self
, const char * pchFile
,
498 const char * pchPreviewFile
, AppId_t nConsumerAppId
,
499 const char * pchTitle
, const char * pchDescription
,
500 ERemoteStoragePublishedFileVisibility eVisibility
,
501 SteamParamStringArray_t
* pTags
, EWorkshopFileType eWorkshopFileType
);
502 PublishedFileUpdateHandle_t
503 SteamAPI_ISteamRemoteStorage_CreatePublishedFileUpdateRequest(
504 ISteamRemoteStorage
* self
, PublishedFileId_t unPublishedFileId
);
505 steamapi_bool
SteamAPI_ISteamRemoteStorage_UpdatePublishedFileFile(
506 ISteamRemoteStorage
* self
, PublishedFileUpdateHandle_t updateHandle
,
507 const char * pchFile
);
508 steamapi_bool
SteamAPI_ISteamRemoteStorage_UpdatePublishedFilePreviewFile(
509 ISteamRemoteStorage
* self
, PublishedFileUpdateHandle_t updateHandle
,
510 const char * pchPreviewFile
);
511 steamapi_bool
SteamAPI_ISteamRemoteStorage_UpdatePublishedFileTitle(
512 ISteamRemoteStorage
* self
, PublishedFileUpdateHandle_t updateHandle
,
513 const char * pchTitle
);
514 steamapi_bool
SteamAPI_ISteamRemoteStorage_UpdatePublishedFileDescription(
515 ISteamRemoteStorage
* self
, PublishedFileUpdateHandle_t updateHandle
,
516 const char * pchDescription
);
517 steamapi_bool
SteamAPI_ISteamRemoteStorage_UpdatePublishedFileVisibility(
518 ISteamRemoteStorage
* self
, PublishedFileUpdateHandle_t updateHandle
,
519 ERemoteStoragePublishedFileVisibility eVisibility
);
520 steamapi_bool
SteamAPI_ISteamRemoteStorage_UpdatePublishedFileTags(
521 ISteamRemoteStorage
* self
, PublishedFileUpdateHandle_t updateHandle
,
522 SteamParamStringArray_t
* pTags
);
523 SteamAPICall_t
SteamAPI_ISteamRemoteStorage_CommitPublishedFileUpdate(
524 ISteamRemoteStorage
* self
, PublishedFileUpdateHandle_t updateHandle
);
525 SteamAPICall_t
SteamAPI_ISteamRemoteStorage_GetPublishedFileDetails(
526 ISteamRemoteStorage
* self
, PublishedFileId_t unPublishedFileId
,
527 u32 unMaxSecondsOld
);
528 SteamAPICall_t
SteamAPI_ISteamRemoteStorage_DeletePublishedFile(
529 ISteamRemoteStorage
* self
, PublishedFileId_t unPublishedFileId
);
530 SteamAPICall_t
SteamAPI_ISteamRemoteStorage_EnumerateUserPublishedFiles(
531 ISteamRemoteStorage
* self
, u32 unStartIndex
);
532 SteamAPICall_t
SteamAPI_ISteamRemoteStorage_SubscribePublishedFile(
533 ISteamRemoteStorage
* self
, PublishedFileId_t unPublishedFileId
);
534 SteamAPICall_t
SteamAPI_ISteamRemoteStorage_EnumerateUserSubscribedFiles(
535 ISteamRemoteStorage
* self
, u32 unStartIndex
);
536 SteamAPICall_t
SteamAPI_ISteamRemoteStorage_UnsubscribePublishedFile(
537 ISteamRemoteStorage
* self
, PublishedFileId_t unPublishedFileId
);
539 SteamAPI_ISteamRemoteStorage_UpdatePublishedFileSetChangeDescription(
540 ISteamRemoteStorage
* self
, PublishedFileUpdateHandle_t updateHandle
,
541 const char * pchChangeDescription
);
542 SteamAPICall_t
SteamAPI_ISteamRemoteStorage_GetPublishedItemVoteDetails(
543 ISteamRemoteStorage
* self
, PublishedFileId_t unPublishedFileId
);
544 SteamAPICall_t
SteamAPI_ISteamRemoteStorage_UpdateUserPublishedItemVote(
545 ISteamRemoteStorage
* self
, PublishedFileId_t unPublishedFileId
,
546 steamapi_bool bVoteUp
);
547 SteamAPICall_t
SteamAPI_ISteamRemoteStorage_GetUserPublishedItemVoteDetails(
548 ISteamRemoteStorage
* self
, PublishedFileId_t unPublishedFileId
);
549 SteamAPICall_t
SteamAPI_ISteamRemoteStorage_EnumerateUserSharedWorkshopFiles(
550 ISteamRemoteStorage
* self
, u64_steamid steamId
, u32 unStartIndex
,
551 SteamParamStringArray_t
* pRequiredTags
,
552 SteamParamStringArray_t
* pExcludedTags
);
553 SteamAPICall_t
SteamAPI_ISteamRemoteStorage_PublishVideo(
554 ISteamRemoteStorage
* self
, EWorkshopVideoProvider eVideoProvider
,
555 const char * pchVideoAccount
, const char * pchVideoIdentifier
,
556 const char * pchPreviewFile
, AppId_t nConsumerAppId
,
557 const char * pchTitle
, const char * pchDescription
,
558 ERemoteStoragePublishedFileVisibility eVisibility
,
559 SteamParamStringArray_t
* pTags
);
560 SteamAPICall_t
SteamAPI_ISteamRemoteStorage_SetUserPublishedFileAction(
561 ISteamRemoteStorage
* self
, PublishedFileId_t unPublishedFileId
,
562 EWorkshopFileAction eAction
);
563 SteamAPICall_t
SteamAPI_ISteamRemoteStorage_EnumeratePublishedFilesByUserAction(
564 ISteamRemoteStorage
* self
, EWorkshopFileAction eAction
,
566 SteamAPICall_t
SteamAPI_ISteamRemoteStorage_EnumeratePublishedWorkshopFiles(
567 ISteamRemoteStorage
* self
, EWorkshopEnumerationType eEnumerationType
,
568 u32 unStartIndex
, u32 unCount
, u32 unDays
,
569 SteamParamStringArray_t
* pTags
, SteamParamStringArray_t
* pUserTags
);
570 SteamAPICall_t
SteamAPI_ISteamRemoteStorage_UGCDownloadToLocation(
571 ISteamRemoteStorage
* self
, UGCHandle_t hContent
,
572 const char * pchLocation
, u32 unPriority
);
573 i32
SteamAPI_ISteamRemoteStorage_GetLocalFileChangeCount(
574 ISteamRemoteStorage
* self
);
575 const char * SteamAPI_ISteamRemoteStorage_GetLocalFileChange(
576 ISteamRemoteStorage
* self
, int iFile
,
577 ERemoteStorageLocalFileChange
* pEChangeType
,
578 ERemoteStorageFilePathType
* pEFilePathType
);
579 steamapi_bool
SteamAPI_ISteamRemoteStorage_BeginFileWriteBatch(
580 ISteamRemoteStorage
*self
);
581 steamapi_bool
SteamAPI_ISteamRemoteStorage_EndFileWriteBatch(
582 ISteamRemoteStorage
*self
);