BizHawk/BizHawk.Client.Common/movie/tasproj/IStateManager.cs

47 lines
850 B
C#
Raw Normal View History

using System;
using System.Collections.Generic;
using System.IO;
namespace BizHawk.Client.Common
{
public interface IStateManager
{
// byte[] this[int frame] { get; } // TODO: I had it refactored to this back in the day
KeyValuePair<int, byte[]> this[int frame] { get; }
TasStateManagerSettings Settings { get; set; }
Action<int> InvalidateCallback { set; }
void Capture(bool force = false);
bool HasState(int frame);
bool Invalidate(int frame);
void Clear();
void Save(BinaryWriter bw);
void Load(BinaryReader br);
KeyValuePair<int, byte[]> GetStateClosestToFrame(int frame);
bool Any();
int Count { get; }
int Last { get; }
bool IsMarkerState(int frame);
2019-06-15 20:44:34 +00:00
void UpdateStateFrequency();
2019-06-15 20:43:22 +00:00
int GetStateIndexByFrame(int frame);
2019-06-15 20:43:22 +00:00
int GetStateFrameByIndex(int index);
2019-06-15 20:44:34 +00:00
bool Remove(int frame);
}
}