using Shared.Metrology;
using System.Collections.Generic;

namespace Shared
{

    public interface IProcessDataDescription
    {

        int Test { get; set; }
        int Count { get; set; }
        int Index { get; set; }
        IProcessDataDescription GetDefault(ILogic logic, ConfigDataBase configDataBase);
        IProcessDataDescription GetDisplayNames(ILogic logic, ConfigDataBase configDataBase);
        List<IProcessDataDescription> GetDescription(ILogic logic, ConfigDataBase configDataBase, List<Test> tests, object payload);
        List<string> GetDetailNames(ILogic logic, ConfigDataBase configDataBase);
        List<string> GetHeaderNames(ILogic logic, ConfigDataBase configDataBase);
        List<string> GetIgnoreParameterNames(ILogic logic, ConfigDataBase configDataBase, Test test);
        List<string> GetNames(ILogic logic, ConfigDataBase configDataBase);
        List<string> GetPairedParameterNames(ILogic logic, ConfigDataBase configDataBase);
        List<string> GetParameterNames(ILogic logic, ConfigDataBase configDataBase);
        string GetEventDescription();

    }

}