using BizHawk.Emulation.Common; namespace BizHawk.Client.Common { public interface ILogEntryGenerator { /// /// Sets the controller source used to generate an input log entry /// void SetSource(IController source); /// /// Generates an input log entry for the current state of Source /// string GenerateLogEntry(); /// /// Generates a display friendly version of the input log entry /// string GenerateInputDisplay(); /// /// Gets a value indicating whether or not the current controller state is "empty" /// bool IsEmpty { get; } /// /// Gets an input log entry that is considered empty. (booleans will be false, floats will be 0) /// string EmptyEntry { get; } /// /// Gets a movie controller adapter in the same state as the log entry /// /// IMovieController MovieControllerAdapter { get; } } }