using System.Collections.Generic; namespace BizHawk.Client.Common { /// /// Specifies a class that can take an input source and generate a movie input log entry /// public interface ILogEntryGenerator { /// /// Generates an input log entry for the current state of Source /// string GenerateLogEntry(); /// /// Generates a human readable key that will specify the names of the /// buttons and the order they are in. This is intended to simply be /// documentation of the meaning of the mnemonics and not to be used to /// enforce the mnemonic values /// string GenerateLogKey(); /// /// Generates a dictionary of button names to their corresponding mnemonic values /// Dictionary Map(); /// /// 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; } } }