---
title: roAssetFetcherProgressEvent
slug: develop/roassetfetcherprogressevent
docTags: 
createdAt: 2025-03-11T07:07:17.200Z
---

This event is generated by the *roAssetFetcher* object at regular intervals during file downloads. Use the *roAssetFetcher.SetFileProgressIntervalSeconds()* method to customize how often progress events are generated. 

## ifAssetFetcherProgressEvent

### GetFileName() As String

Returns the name of the file associated with the event. The file name is retrieved from the sync spec associated with the *roAssetFetcher* that generated the event.

### GetFileIndex() As Integer

Returns the zero-based index from the sync spec of the file associated with the event.

### GetFileCount() As Integer

Returns the total number of files within the sync spec.

### GetCurrentFileTransferredMegabytes() As Integer

Returns the number of transferred megabytes belonging to the file associated with the event.

### GetCurrentFileSizeMegabytes() As Integer

Returns the size of the file associated with the event.

### GetCurrentFilePercentage() As Float

Returns a floating-point number representing the download percentage of the file associated with the event.

:::hint{type="info"}
The file size/percentage returned by the methods above is derived from the asset `size` in the associated *roAssetCollection* or sync spec–not from the HTTP "Content-Length" header. Specifying an asset `size` of zero will cause these methods to return zero.
:::

## ifUserData

### SetUserData(user\_data As Object) As Void

Sets the user data.

### GetUserData() As Object

Returns the user data that has previously been set via `SetUserData()` (on either the event or source object). It will return Invalid if no data has been set.
