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
|
|
|
}
|
|
|
|
}
|