Net.Project.B/Src/SpotterScope/ISpotterScopeService.cs

29 lines
853 B
C#
Raw Normal View History

2025-02-24 23:02:49 +08:00
using System;
using System.Collections;
using System.Collections.Generic;
using Cysharp.Threading.Tasks;
using MemoryPack;
using Unity.Mathematics;
namespace Net.Project.B.World
{
[MemoryPackable]
public partial record SpotterScopeData
{
public string FileName { get; set; }
public string Name { get; set; }
public string Description { get; set; }
public DateTime CreateTime { get; set; }
public float3 Position { get; set; }
public quaternion Rotation { get; set; }
}
public interface ISpotterScopeService
{
public string Directory { get; }
public UniTask<SpotterScopeData> Snapshot(float3 position, quaternion rotation, int fov);
UniTask<IReadOnlyList<SpotterScopeData>> GetSnapshots();
public event Action<SpotterScopeData> OnSnapshot;
}
}