internal static void OnQueryFileListComplete(IntPtr address) { OnQueryFileListCompleteCallback callback = null; QueryFileListCallbackInfo callbackInfo = null; if (Helper.TryGetAndRemoveCallback <OnQueryFileListCompleteCallback, QueryFileListCallbackInfoInternal, QueryFileListCallbackInfo>(address, out callback, out callbackInfo)) { callback(callbackInfo); } }
/// <summary> /// Query the file metadata, such as file names, size, and a MD5 hash of the data, for all files available for current user based on their settings (such as game role) and tags provided. /// This is not required before a file can be downloaded by name. /// </summary> /// <param name="options">Object containing properties related to which user is querying files and the list of tags</param> /// <param name="clientData">Optional pointer to help clients track this request, that is returned in the completion callback</param> /// <param name="completionCallback">This function is called when the query operation completes</param> public void QueryFileList(QueryFileListOptions options, object clientData, OnQueryFileListCompleteCallback completionCallback) { System.IntPtr optionsAddress = new System.IntPtr(); Helper.TryMarshalSet <QueryFileListOptionsInternal, QueryFileListOptions>(ref optionsAddress, options); var clientDataAddress = System.IntPtr.Zero; var completionCallbackInternal = new OnQueryFileListCompleteCallbackInternal(OnQueryFileListCompleteCallbackInternalImplementation); Helper.AddCallback(ref clientDataAddress, clientData, completionCallback, completionCallbackInternal); EOS_TitleStorage_QueryFileList(InnerHandle, optionsAddress, clientDataAddress, completionCallbackInternal); Helper.TryMarshalDispose(ref optionsAddress); }
/// <summary> /// Query the file metadata, such as file names, size, and a MD5 hash of the data, for all files owned by this user for this application. This is not required before a file may be opened, /// saved, copied, or deleted. /// <seealso cref="GetFileMetadataCount" /> /// <seealso cref="CopyFileMetadataAtIndex" /> /// <seealso cref="CopyFileMetadataByFilename" /> /// </summary> /// <param name="options">Object containing properties related to which user is querying files</param> /// <param name="clientData">Optional pointer to help clients track this request, that is returned in the completion callback</param> /// <param name="completionCallback">This function is called when the query operation completes</param> public void QueryFileList(QueryFileListOptions queryFileListOptions, object clientData, OnQueryFileListCompleteCallback completionCallback) { var queryFileListOptionsInternal = Helper.CopyProperties <QueryFileListOptionsInternal>(queryFileListOptions); var completionCallbackInternal = new OnQueryFileListCompleteCallbackInternal(OnQueryFileListComplete); var clientDataAddress = IntPtr.Zero; Helper.AddCallback(ref clientDataAddress, clientData, completionCallback, completionCallbackInternal); EOS_PlayerDataStorage_QueryFileList(InnerHandle, ref queryFileListOptionsInternal, clientDataAddress, completionCallbackInternal); Helper.TryMarshalDispose(ref queryFileListOptionsInternal); }