31 lines
1.2 KiB
C#
31 lines
1.2 KiB
C#
using System.Collections.Generic;
|
|
using System.Threading.Tasks;
|
|
using LaDOSE.Entity;
|
|
|
|
namespace LaDOSE.Business.Interface
|
|
{
|
|
public interface IStatisticsService
|
|
{
|
|
/// <summary>
|
|
/// Aggregate the persisted sets of the given Events into per-player records,
|
|
/// head-to-head records and a coverage report.
|
|
/// A null or empty id list yields a well-formed, zeroed <see cref="MatchStats"/>.
|
|
/// </summary>
|
|
Task<MatchStats> GetMatchStats(List<int> eventIds);
|
|
|
|
/// <summary>
|
|
/// The players a versus lookup can say something about: those with at least one
|
|
/// set in a bracket whose game is known, by display name.
|
|
/// </summary>
|
|
Task<List<PlayerOption>> GetVersusPlayers();
|
|
|
|
/// <summary>
|
|
/// Every recorded meeting between two players, all events, broken down per game.
|
|
/// Sets whose bracket has no game are excluded and only counted in
|
|
/// <see cref="PlayerVersus.UnknownGameSets"/>.
|
|
/// Missing, equal or unknown ids yield a well-formed empty <see cref="PlayerVersus"/>.
|
|
/// </summary>
|
|
Task<PlayerVersus> GetVersus(int playerAId, int playerBId);
|
|
}
|
|
}
|