2025-08-06 17:03:37 -07:00
|
|
|
using System;
|
|
|
|
|
using System.Collections.Generic;
|
2025-08-19 00:27:53 -07:00
|
|
|
using Avalonia.Controls;
|
2025-08-06 17:03:37 -07:00
|
|
|
using Avalonia.Media;
|
2025-08-18 00:32:10 -07:00
|
|
|
using SaturnData.Notation.Core;
|
2025-08-06 17:03:37 -07:00
|
|
|
|
|
|
|
|
namespace MercuryConverter.Data;
|
|
|
|
|
|
2025-08-18 00:32:10 -07:00
|
|
|
/// <summary>
|
|
|
|
|
/// Combining SaturnData's Entry & Chart.
|
|
|
|
|
/// </summary>
|
2025-08-06 17:03:37 -07:00
|
|
|
public class Song
|
|
|
|
|
{
|
2025-08-18 00:32:10 -07:00
|
|
|
public required string Id { get; set; } // Snn-nnn
|
2025-08-07 17:41:58 -07:00
|
|
|
public required string Name { get; set; }
|
|
|
|
|
public required string Artist { get; set; }
|
2025-08-18 00:32:10 -07:00
|
|
|
public required uint Source { get; set; }
|
|
|
|
|
public required string Rubi { get; set; }
|
|
|
|
|
public string? Copyright { get; set; } // May have never been used?
|
|
|
|
|
public required int Genre { get; set; }
|
|
|
|
|
public required string? Jacket { get; set; }
|
|
|
|
|
public required float PreviewTime { get; set; }
|
|
|
|
|
public required float PreviewLen { get; set; }
|
|
|
|
|
public string SourceName => Consts.NUM_SOURCE[Source];
|
2025-08-19 00:27:53 -07:00
|
|
|
public float?[] Levels { get; set; } = { null, null, null, null };
|
2025-08-18 00:32:10 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
// TODO: For SaturnData.Entry instances, use this Guid format:
|
|
|
|
|
// MERCURY_[SONGID]_[DIFF] (each var is int)
|
2025-08-06 17:03:37 -07:00
|
|
|
}
|