PinkConnection/PC3Player/PC3Player/DataTypes.cs

73 lines
2.4 KiB
C#

using System.Diagnostics.Eventing.Reader;
namespace PC3Player
{
public class PlaylistShow
{
public PlaylistShow(string name, string length, string type, string filePath)
{
Name = name;
Type = type;
Length = length;
FilePath = filePath;
}
public string Name { get; set; }
public string Type { get; set; }
public string Length { get; set; }
public string FilePath { get; set; }
}
public class ChannelMapping
{
public ChannelMapping(string name, string type, int[] bits, int[] invertedBits)
{
Name = name;
Type = type;
Bits = bits;
InvertedBits = invertedBits;
}
public string Name { get; set; }
public string Type { get; set; }
public int[] Bits { get; set; }
public int[] InvertedBits { get; set; }
}
public class PlaylistConfig
{
public int PlaylistStartOption { get; set; } = 0;
public int PlaylistShowEndOption { get; set; } = 0;
public bool PlaylistIntermissionOption { get; set; } = false;
public int PlaylistIntermissionTimeOption { get; set; } = 8;
public int PlaylistIntermissionUnitOption { get; set; } = 0;
public bool PlaylistLoopOption { get; set; } = true;
public int SelectorButtonPressOption { get; set; } = 0;
public int SelectorShowAlreadyPlayingOption { get; set; } = 0;
public int SelectorShowEndOption { get; set; } = 0;
public bool SelectorCooldownOption { get; set; } = false;
public int SelectorCooldownTimeOption { get; set; } = 30;
public int SelectorCooldownUnitOption { get; set; } = 1;
public bool SelectorPlaySkitOption { get; set; } = false;
public int?[] SelectorAssignments { get; set; } = new int?[12];
public int FramesPerTick { get; set; } = 6;
public int ResyncSeconds { get; set; } = 1;
public int FrameShift { get; set; } = 0;
public ChannelMapping Mapping { get; set; }
public List<PlaylistShow> Shows { get; set; } = new List<PlaylistShow>();
public List<PlaylistShow> Skits { get; set; } = new List<PlaylistShow>();
}
public enum StartMethod
{
PlaylistStart,
PlaylistShowEnd,
SelectorPress,
SelectorShowEnd
}
}