/// <summary> /// Constructor from a set of EncodedPositionBoards. /// </summary> /// <param name="boardHistory"></param> /// <param name="miscInfo"></param> private EncodedPositionWithHistory(EncodedPositionBoards boardHistory, EncodedTrainingPositionMiscInfo miscInfo) { BoardsHistory = boardHistory; MiscInfo = miscInfo; // if (Marshal.SizeOf<LZBoard>() != LZBoardSizeInBytes) throw new Exception("Internal error, incorrect board size"); }
/// <summary> /// Overwrites the MiscInfo with a specified value. /// </summary> /// <param name="miscInfo"></param> public void SetMiscInfo(EncodedTrainingPositionMiscInfo miscInfo) { fixed(EncodedTrainingPositionMiscInfo *p = &MiscInfo) { *p = miscInfo; } }