using Library.Eaf.EquipmentCore.SelfDescription.ElementDescription;
using Library.PeerGroup.GCL.Annotations;
using System;

namespace Library.Eaf.EquipmentCore.DataCollection.Reporting
{
    public class ParameterValue
    {
        public ParameterValue(EquipmentParameter definition, object value) { }
        public ParameterValue(EquipmentParameter definition, object value, DateTime timestamp) { }

        public virtual object Value { get; protected internal set; }
        [NotNull]
        public EquipmentParameter Definition { get; }
        public DateTime Timestamp { get; protected set; }

        public virtual ParameterValue Clone(EquipmentParameter newDefinition) { throw new NotImplementedException(); }
        public override string ToString() { return base.ToString(); }
    }
}