public FrameSyncInput(FrameSyncInputConfig inputConfig) { if (_inputConfig != null) { throw new InvalidOperationException("SWFrameSyncInputConfig cannot be changed"); } _inputConfig = new FrameSyncInputConfig(inputConfig); int index = 0; foreach (FrameSyncInputSetting inputSetting in _inputConfig.InputSettings) { _inputIndexDictionary[inputSetting.Name] = index; index++; } }
internal Dictionary <string, string> ExportDictionary(FrameSyncInputConfig inputConfig, SWBytes bytes) { bytes.ReadByteArray(_inputOffset, _exportByteArray); _exportBitArray = new BitArray(_exportByteArray); int index = 0; foreach (FrameSyncInputSetting s in inputConfig.InputSettings) { string displayValue = _inputDataControllers[index].DisplayValue(_exportBitArray); _debugDict[s.Name] = displayValue; index++; } return(_debugDict); }
public FrameSyncPlayer(byte playerID, FrameSyncInputConfig config) { _playerID = playerID; byte bitOffset = 0; foreach (FrameSyncInputSetting inputSetting in config.InputSettings) { _inputDataControllers.Add(inputSetting.MakeInputDataController(bitOffset)); bitOffset = (byte)(bitOffset + inputSetting.BitSize); } _byteSize = config.ByteSize; _byteArray = new byte[_byteSize]; _exportByteArray = new byte[_byteSize]; _exportBitArray = new BitArray(_exportByteArray); _inputOffset = (byte)((_playerID - 1) * _byteSize); }
public void SetFrameSyncInputConfig(FrameSyncInputConfig inputConfig) { _input = new FrameSyncInput(inputConfig); _input.SetInputProvider(this); }
public FrameSyncInputConfig(FrameSyncInputConfig other) { InputSettings = new FrameSyncInputSetting[other.InputSettings.Length]; Array.Copy(other.InputSettings, InputSettings, other.InputSettings.Length); _byteSize = other._byteSize; }