internal static uint GetMaskedHash(NativeView data, NativeView mask, uint seed) { var copy = NativeArrayUtility.CreateOwningCopy(data, Allocator.Temp); MaskedMemCopy.ApplyMask(NativeViewUtility.GetWriteView(copy), mask); var hash = GetDenseHash(copy, seed); copy.Dispose(); return(hash); }
public static void ApplyMask <T>(NativeArray <T> target, NativeArray <byte> mask) where T : struct { ApplyMask(NativeViewUtility.GetWriteView(target), NativeViewUtility.GetReadView(mask)); }
internal static uint GetChunkHeaderHash(ArchetypeChunk chunk, uint seed) { var header = chunk.GetGatheredChunkHeader(seed); return(GetDenseHash(NativeViewUtility.GetView(ref header), seed)); }
public static uint GetDenseHash <T>(NativeArray <T> data, uint seed) where T : struct { return(GetDenseHash(NativeViewUtility.GetReadView(data), seed)); }
static uint GetMaskedHash <T>(NativeArray <T> data, NativeArray <byte> mask, uint seed) where T : struct { return(GetMaskedHash(NativeViewUtility.GetReadView(data), NativeViewUtility.GetReadView(mask), seed)); }