using System;

using EOSDigital.API;

namespace EDSDKLib.API.Base
{
	public sealed class DownloadInfoMock : IDownloadInfo
	{
		/// <summary>
		/// Pointer to the downloadable object
		/// </summary>
		public IntPtr Reference { get; }

		/// <summary>
		/// The name of the file. You can change it before you pass it to the
		/// <see cref="Camera.DownloadFile(DownloadInfo)"/> or
		/// <see cref="Camera.DownloadFile(DownloadInfo, string)"/> method.
		/// </summary>
		public string FileName { get; set; }

		/// <summary>
		/// The files size in bytes
		/// </summary>
		public int Size { get; }

		/// <summary>
		/// The files size in bytes (as ulong)
		/// </summary>
		public long Size64 { get; }

		/// <summary>
		/// States if the file is a RAW file or not
		/// </summary>
		public bool IsRAW { get; }
	}
}