1using System.Collections.ObjectModel;
2using System.ComponentModel;
Class that represents a combination variant of all single races.
Interface for a service used to manage Race and RacesVariant objects.
void ResetToLoadedState()
Reset the to the state when the method was called.
void ClearAllRacesVariants()
Remove all RacesVariant from the list AllRacesVariants
int RecalculateVariantIDs(int oldVariantID=-1)
Reassign all RacesVariant.VariantID so that the IDs start from 1 and have no gaps.
void AddRacesVariant(RacesVariant racesVariant)
Add a new RacesVariant to the list AllRacesVariants
Task< ObservableCollection< RacesVariant > > CalculateRacesVariants(CancellationToken cancellationToken, ProgressDelegate onProgressIteration=null, ProgressDelegate onProgressSolution=null)
Calculate some RacesVariant objects for all person starts.
void SortVariantsByScore()
Sort the complete list AllRacesVariants descending by the RacesVariant.Score
void RemoveRacesVariant(RacesVariant racesVariant)
Remove the given RacesVariant object from the list AllRacesVariants
void SetWorkspaceServiceObj(IWorkspaceService workspaceService)
Save the reference to the IWorkspaceService object.
void CleanupRacesVariants(bool removeInactiveStarts=true)
Remove non-existing and inactive PersonStart objects from all races in AllRacesVariants.
ObservableCollection< RacesVariant > AllRacesVariants
List with all RacesVariant (including the loaded and calculated ones)
RacesVariant PersistedRacesVariant
RacesVariant object that is persisted (saved/loaded to/from a file).
void ReassignAllPersonStarts()
Reassign all PersonStart objects in all RacesVariant in AllRacesVariants.
Interface for saveable objects.
Interface for a service used to manage a workspace.
delegate void ProgressDelegate(object sender, float progress, string currentStep="")
Delegate void for progress changes.