BililiveRecorder/BililiveRecorder.Flv/IGroupingRule.cs

27 lines
739 B
C#
Raw Normal View History

2021-02-08 16:51:19 +08:00
using System.Collections.Generic;
using BililiveRecorder.Flv.Pipeline;
namespace BililiveRecorder.Flv
{
public interface IGroupingRule
{
2021-03-10 00:30:17 +08:00
/// <summary>
///
/// </summary>
/// <param name="tags">Current Tags</param>
/// <returns></returns>
2021-04-02 20:44:17 +08:00
bool StartWith(Tag tag);
2021-03-10 00:30:17 +08:00
/// <summary>
///
/// </summary>
/// <param name="tag">Tag not yet added to the list</param>
/// <param name="tags">List of tags</param>
/// <param name="leftover"></param>
/// <returns></returns>
2021-04-02 20:44:17 +08:00
bool AppendWith(Tag tag, LinkedList<Tag> tags, out LinkedList<Tag>? leftover);
2021-03-10 00:30:17 +08:00
2021-04-02 20:44:17 +08:00
PipelineAction CreatePipelineAction(LinkedList<Tag> tags);
2021-02-08 16:51:19 +08:00
}
}