using System.Collections.Generic;
using Toolbox.Docking.Api.Control;

namespace Toolbox.Docking.Api.Objects.Profiler
{
    /// <summary>
    /// Toolbox profiler object.
    /// </summary>
    public interface ITbProfiler: ITbObject
    {
        /// <summary>
        /// Return the list of categories a Chemical. 
        /// </summary>
        /// <param name="target">Target basket (chemical) to be tested by the profiler.</param>
        /// <returns>
        /// Returns a list of categories for the target chemical. 
        /// Categories are subset from the <see cref="ITbProfilerFactory.AllCategories"/> list.
        /// </returns>
        IEnumerable<string> GetCategoriesOf(ITbBasket target);
    }
}