public void Write( MutagenWriter writer, ICellGetter item, RecordTypeConverter?recordTypeConverter = null) { using (HeaderExport.Header( writer: writer, record: recordTypeConverter.ConvertToCustom(RecordTypes.CELL), type: ObjectType.Record)) { try { Fallout4MajorRecordBinaryWriteTranslation.WriteEmbedded( item: item, writer: writer); MajorRecordBinaryWriteTranslation.WriteRecordTypes( item: item, writer: writer, recordTypeConverter: recordTypeConverter); } catch (Exception ex) { throw RecordException.Enrich(ex, item); } } }
public virtual int GetHashCode(ICellGetter item) { var hash = new HashCode(); hash.Add(base.GetHashCode()); return(hash.ToHashCode()); }
public void Write( MutagenWriter writer, ICellGetter item, TypedWriteParams?translationParams = null) { using (HeaderExport.Record( writer: writer, record: translationParams.ConvertToCustom(RecordTypes.CELL))) { try { Fallout4MajorRecordBinaryWriteTranslation.WriteEmbedded( item: item, writer: writer); MajorRecordBinaryWriteTranslation.WriteRecordTypes( item: item, writer: writer, translationParams: translationParams); } catch (Exception ex) { throw RecordException.Enrich(ex, item); } } }
public static Cell DeepCopy( this ICellGetter item, Cell.TranslationMask?copyMask = null) { return(((CellSetterTranslationCommon)((ICellGetter)item).CommonSetterTranslationInstance() !).DeepCopy( item: item, copyMask: copyMask)); }
public IEnumerable <IFormLinkGetter> GetContainedFormLinks(ICellGetter obj) { foreach (var item in base.GetContainedFormLinks(obj)) { yield return(item); } yield break; }
public Cell Duplicate( ICellGetter item, FormKey formKey, TranslationCrystal?copyMask) { var newRec = new Cell(formKey); newRec.DeepCopyIn(item, default(ErrorMaskBuilder?), copyMask); return(newRec); }
protected static void ToStringFields( ICellGetter item, FileGeneration fg, Cell.Mask <bool>?printMask = null) { Fallout4MajorRecordCommon.ToStringFields( item: item, fg: fg, printMask: printMask); }
public static bool Equals( this ICellGetter item, ICellGetter rhs, Cell.TranslationMask?equalsMask = null) { return(((CellCommon)((ICellGetter)item).CommonInstance() !).Equals( lhs: item, rhs: rhs, crystal: equalsMask?.GetCrystal())); }
public static Cell DeepCopy( this ICellGetter item, ErrorMaskBuilder?errorMask, TranslationCrystal?copyMask = null) { return(((CellSetterTranslationCommon)((ICellGetter)item).CommonSetterTranslationInstance() !).DeepCopy( item: item, copyMask: copyMask, errorMask: errorMask)); }
public static Cell Duplicate( this ICellGetter item, FormKey formKey, Cell.TranslationMask?copyMask = null) { return(((CellCommon)((ICellGetter)item).CommonInstance() !).Duplicate( item: item, formKey: formKey, copyMask: copyMask?.GetCrystal())); }
public static string ToString( this ICellGetter item, string?name = null, Cell.Mask <bool>?printMask = null) { return(((CellCommon)((ICellGetter)item).CommonInstance() !).ToString( item: item, name: name, printMask: printMask)); }
public static Cell.Mask <bool> GetEqualsMask( this ICellGetter item, ICellGetter rhs, EqualsMaskHelper.Include include = EqualsMaskHelper.Include.All) { return(((CellCommon)((ICellGetter)item).CommonInstance() !).GetEqualsMask( item: item, rhs: rhs, include: include)); }
public static void ToString( this ICellGetter item, FileGeneration fg, string?name = null, Cell.Mask <bool>?printMask = null) { ((CellCommon)((ICellGetter)item).CommonInstance() !).ToString( item: item, fg: fg, name: name, printMask: printMask); }
public void FillEqualsMask( ICellGetter item, ICellGetter rhs, Cell.Mask <bool> ret, EqualsMaskHelper.Include include = EqualsMaskHelper.Include.All) { if (rhs == null) { return; } base.FillEqualsMask(item, rhs, ret, include); }
public static void DeepCopyIn( this ICellInternal lhs, ICellGetter rhs, ErrorMaskBuilder?errorMask, TranslationCrystal?copyMask) { ((CellSetterTranslationCommon)((ICellGetter)lhs).CommonSetterTranslationInstance() !).DeepCopyIn( item: lhs, rhs: rhs, errorMask: errorMask, copyMask: copyMask, deepCopy: false); }
public string ToString( ICellGetter item, string?name = null, Cell.Mask <bool>?printMask = null) { var fg = new FileGeneration(); ToString( item: item, fg: fg, name: name, printMask: printMask); return(fg.ToString()); }
public Cell.Mask <bool> GetEqualsMask( ICellGetter item, ICellGetter rhs, EqualsMaskHelper.Include include = EqualsMaskHelper.Include.All) { var ret = new Cell.Mask <bool>(false); ((CellCommon)((ICellGetter)item).CommonInstance() !).FillEqualsMask( item: item, rhs: rhs, ret: ret, include: include); return(ret); }
public void DeepCopyIn( ICellInternal item, ICellGetter rhs, ErrorMaskBuilder?errorMask, TranslationCrystal?copyMask, bool deepCopy) { base.DeepCopyIn( item, rhs, errorMask, copyMask, deepCopy: deepCopy); }
public void DeepCopyIn( ICell item, ICellGetter rhs, ErrorMaskBuilder?errorMask, TranslationCrystal?copyMask, bool deepCopy) { base.DeepCopyIn( (IFallout4MajorRecord)item, (IFallout4MajorRecordGetter)rhs, errorMask, copyMask, deepCopy: deepCopy); }
public Cell DeepCopy( ICellGetter item, Cell.TranslationMask?copyMask = null) { Cell ret = (Cell)((CellCommon)((ICellGetter)item).CommonInstance() !).GetNew(); ((CellSetterTranslationCommon)((ICellGetter)ret).CommonSetterTranslationInstance() !).DeepCopyIn( item: ret, rhs: item, errorMask: null, copyMask: copyMask?.GetCrystal(), deepCopy: true); return(ret); }
public Cell DeepCopy( ICellGetter item, ErrorMaskBuilder?errorMask, TranslationCrystal?copyMask = null) { Cell ret = (Cell)((CellCommon)((ICellGetter)item).CommonInstance() !).GetNew(); ((CellSetterTranslationCommon)((ICellGetter)ret).CommonSetterTranslationInstance() !).DeepCopyIn( item: ret, rhs: item, errorMask: errorMask, copyMask: copyMask, deepCopy: true); return(ret); }
public static void DeepCopyIn( this ICellInternal lhs, ICellGetter rhs, out Cell.ErrorMask errorMask, Cell.TranslationMask?copyMask = null) { var errorMaskBuilder = new ErrorMaskBuilder(); ((CellSetterTranslationCommon)((ICellGetter)lhs).CommonSetterTranslationInstance() !).DeepCopyIn( item: lhs, rhs: rhs, errorMask: errorMaskBuilder, copyMask: copyMask?.GetCrystal(), deepCopy: false); errorMask = Cell.ErrorMask.Factory(errorMaskBuilder); }
public Cell DeepCopy( ICellGetter item, out Cell.ErrorMask errorMask, Cell.TranslationMask?copyMask = null) { var errorMaskBuilder = new ErrorMaskBuilder(); Cell ret = (Cell)((CellCommon)((ICellGetter)item).CommonInstance() !).GetNew(); ((CellSetterTranslationCommon)((ICellGetter)ret).CommonSetterTranslationInstance() !).DeepCopyIn( ret, item, errorMask: errorMaskBuilder, copyMask: copyMask?.GetCrystal(), deepCopy: true); errorMask = Cell.ErrorMask.Factory(errorMaskBuilder); return(ret); }
public void ToString( ICellGetter item, FileGeneration fg, string?name = null, Cell.Mask <bool>?printMask = null) { if (name == null) { fg.AppendLine($"Cell =>"); } else { fg.AppendLine($"{name} (Cell) =>"); } fg.AppendLine("["); using (new DepthWrapper(fg)) { ToStringFields( item: item, fg: fg, printMask: printMask); } fg.AppendLine("]"); }
public static partial void CustomBinaryEndExport(MutagenWriter writer, ICellGetter obj) { try { var pathGrid = obj.PathGrid; var landscape = obj.Landscape; if ((obj.Persistent?.Count ?? 0) == 0 && (obj.Temporary?.Count ?? 0) == 0 && (obj.VisibleWhenDistant?.Count ?? 0) == 0 && pathGrid == null && landscape == null) { return; } using (HeaderExport.Header(writer, RecordTypes.GRUP, ObjectType.Group)) { FormKeyBinaryTranslation.Instance.Write( writer, obj.FormKey); writer.Write((int)GroupTypeEnum.CellChildren); writer.Write(obj.Timestamp); if (obj.Persistent?.Count > 0) { using (HeaderExport.Header(writer, RecordTypes.GRUP, ObjectType.Group)) { FormKeyBinaryTranslation.Instance.Write( writer, obj.FormKey); writer.Write((int)GroupTypeEnum.CellPersistentChildren); writer.Write(obj.PersistentTimestamp); ListBinaryTranslation <IPlacedGetter> .Instance.Write( writer : writer, items : obj.Persistent, transl : (r, item) => { item.WriteToBinary(r); }); } } if (obj.Temporary?.Count > 0 || pathGrid != null || landscape != null) { using (HeaderExport.Header(writer, RecordTypes.GRUP, ObjectType.Group)) { FormKeyBinaryTranslation.Instance.Write( writer, obj.FormKey); writer.Write((int)GroupTypeEnum.CellTemporaryChildren); writer.Write(obj.TemporaryTimestamp); landscape?.WriteToBinary(writer); pathGrid?.WriteToBinary(writer); if (obj.Temporary != null) { ListBinaryTranslation <IPlacedGetter> .Instance.Write( writer : writer, items : obj.Temporary, transl : (r, item) => { item.WriteToBinary(r); }); } } } if (obj.VisibleWhenDistant?.Count > 0) { using (HeaderExport.Header(writer, RecordTypes.GRUP, ObjectType.Group)) { FormKeyBinaryTranslation.Instance.Write( writer, obj.FormKey); writer.Write((int)GroupTypeEnum.CellVisibleDistantChildren); writer.Write(obj.VisibleWhenDistantTimestamp); ListBinaryTranslation <IPlacedGetter> .Instance.Write( writer : writer, items : obj.VisibleWhenDistant, transl : (r, item) => { item.WriteToBinary(r); }); } } } } catch (Exception ex) { throw RecordException.Enrich(ex, obj); } }
public static partial void CustomBinaryEndExport(MutagenWriter writer, ICellGetter obj) { try { var navMeshes = obj.NavigationMeshes; var landscape = obj.Landscape; if ((obj.Persistent?.Count ?? 0) == 0 && (obj.Temporary?.Count ?? 0) == 0 && navMeshes.Count == 0 && landscape == null) { return; } using (HeaderExport.Header(writer, RecordTypes.GRUP, ObjectType.Group)) { FormKeyBinaryTranslation.Instance.Write( writer, obj.FormKey); writer.Write((int)GroupTypeEnum.CellChildren); writer.Write(obj.Timestamp); writer.Write(obj.UnknownGroupData); if (obj.Persistent?.Count > 0) { using (HeaderExport.Header(writer, RecordTypes.GRUP, ObjectType.Group)) { FormKeyBinaryTranslation.Instance.Write( writer, obj.FormKey); writer.Write((int)GroupTypeEnum.CellPersistentChildren); writer.Write(obj.PersistentTimestamp); writer.Write(obj.PersistentUnknownGroupData); ListBinaryTranslation <IPlacedGetter> .Instance.Write( writer : writer, items : obj.Persistent, transl : WritePlaced); } } if (obj.Temporary?.Count > 0 || navMeshes.Count > 0 || landscape != null) { using (HeaderExport.Header(writer, RecordTypes.GRUP, ObjectType.Group)) { FormKeyBinaryTranslation.Instance.Write( writer, obj.FormKey); writer.Write((int)GroupTypeEnum.CellTemporaryChildren); writer.Write(obj.TemporaryTimestamp); writer.Write(obj.TemporaryUnknownGroupData); landscape?.WriteToBinary(writer); foreach (var navMesh in navMeshes) { navMesh.WriteToBinary(writer); } if (obj.Temporary != null) { ListBinaryTranslation <IPlacedGetter> .Instance.Write( writer : writer, items : obj.Temporary, transl : WritePlaced); } } } } } catch (Exception ex) { throw RecordException.Enrich(ex, obj); } }