view api/Objects/IWarFoundryStagedLoadObject.cs @ 14:0770e5cbba7c

Closes #21 - File loading in order * Reworked LoadFiles to smaller methods for readability (also re #10) and structure * Now determine expected load return before loading then load all "expected GameSystem" before "expected Race" * Make "can load as race/game system/army" methods public in interface Re #22 - Get errored file loading * Created FileLoadFailure class and made LoadFiles return a list of them Also * Some code cleanup * Change to DictionaryUtils calls
author IBBoard <dev@ibboard.co.uk>
date Sun, 25 Jan 2009 14:03:20 +0000
parents 613bc5eaac59
children 306558904c2a
line wrap: on
line source

using System;
using ICSharpCode.SharpZipLib.Zip;
using IBBoard.WarFoundry.API.Factories;

namespace IBBoard.WarFoundry.API.Objects
{
	public interface IWarFoundryStagedLoadObject : IWarFoundryObject
	{	
		/// <summary>
		/// Checks whether the object has been fully loaded or whether only the first stage of loading has been performed.
		/// If the object is not fully loaded then the method must finish loading the object.
		/// </summary>
		void EnsureFullyLoaded();
		
		/// <value>
		/// Gets the <code>AbstractNativeWarFoundryFactory</code> that created the object.
		/// </value>
		IWarFoundryFactory Factory	{ get; }
		
		/// <value>
		/// Returns <code>true</code> if the object has been fully loaded with all data, else returns <code>false</code>
		/// </value>
		bool IsFullyLoaded { get; }
		
		/// <summary>
		/// Marks the object as fully loaded so that no more load checking is required.
		/// </summary>
		void SetAsFullyLoaded();
	}
}