using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Tango.Core;
namespace Tango.MachineStudio.MachineDesigner.Models
{
/// <summary>
/// Represents a hardware version collection.
/// </summary>
/// <seealso cref="Tango.Core.ExtendedObject" />
/// <seealso cref="Tango.MachineStudio.MachineDesigner.Models.IHasDifference" />
public class HardwareCollection : ExtendedObject, IHasDifference
{
/// <summary>
/// Gets or sets the name of the collection.
/// </summary>
public String CollectionName { get; set; }
/// <summary>
/// Gets or sets the components.
/// </summary>
public SynchronizedObservableCollection<HardwareComponent> Components { get; set; }
/// <summary>
/// Gets a value indicating whether this instance has differences.
/// </summary>
public bool HasDifferences
{
get
{
return Components.Any(item => item.HasDifferences);
}
}
/// <summary>
/// Initializes a new instance of the <see cref="HardwareCollection"/> class.
/// </summary>
public HardwareCollection()
{
Components = new SynchronizedObservableCollection<HardwareComponent>();
}
}
}