Documentation

Unity Engine

Unity Engine

NativeArraySharedInt

Merge sort index list referencing NativeArray values.
Read time 3 minutesLast updated 4 days ago

Definition

public struct NativeArraySharedInt : IDisposable

Remarks

Provide list of shared values, indices to shared values, and lists of source i value indices with identical shared value. As an example: Given Source NativeArray: [A,A,A,B,B,C,C,A,B] Provides: Shared value indices: [0,0,0,1,1,2,2,0,1] Shared value counts: [4,3,2] (number of occurrences of a shared value) Shared values: [A,B,C] (not stored in this structure) Sorted indices: [0,1,2,7,3,4,8,5,6] (using these indices to look up values in the source array would give you [A,A,A,A,B,B,B,C,C]) Shared value start offsets (into sorted indices): [0,4,7]

Constructors

Constructor

Description

NativeArraySharedInt(Unity.Collections.NativeArray{System.Int32},Unity.Collections.AllocatorManager.AllocatorHandle)Construct a NativeArraySharedInt struct from a NativeArray

Properties

Property

Description

SharedValueCountNumber of shared (unique) values in source NativeArray
SourceBufferOriginal Source Values (passed into constructor)

Methods

Method

Description

DisposeDispose this NativeArraySharedInt struct
GetSharedIndexArrayIndices into shared values. For example, given source array: [A,A,A,B,B,C,C,A,B] shared values are: [A,B,C] shared index array would contain: [0,0,0,1,1,2,2,0,1]
GetSharedIndexBySourceIndexIndex of shared value associated with an element in the source buffer. For example, given source array: [A,A,A,B,B,C,C,A,B] shared values are: [A,B,C] Given the index 2 into the source array (A), the return value would be 0 (A in shared values).
GetSharedValueIndexCountArrayArray of number of occurrences of all shared values. For example, given source array: [A,A,A,B,B,C,C,A,B] shared values are: [A,B,C] Shared value counts: [4,3,2] (number of occurrences of a shared value)
GetSharedValueIndexCountBySourceIndexNumber of occurrences of a shared (unique) value shared by a given a source index. For example, given source array: [A,A,A,B,B,C,C,A,B] shared values are: [A,B,C] Shared value counts: [4,3,2] (number of occurrences of a shared value) Given the index 2 into the source array (A), the return value would be 4 (for 4 occurrences of A in the source buffer).
GetSharedValueIndicesBySharedIndexArray of indices into source NativeArray which share the same shared value For example, given source array: [A,A,A,B,B,C,C,A,B] shared values are: [A,B,C] Shared value counts: [4,3,2] (number of occurrences of a shared value) Shared value start offsets (into sorted indices): [0,4,7] Given the index 0 into the shared value array (A), the returned array would contain [0,1,2,7] (indices into the source array which point to the shared value A).
GetSharedValueIndicesBySourceIndexArray of indices into shared value indices NativeArray which share the same source value For example, given Source NativeArray: [A,A,A,B,B,C,C,A,B] shared values are: [A,B,C] Shared value indices: [0,0,0,1,1,2,2,0,1] Given the index 2 into the source array (A), the returned array would contain: [0,1,2,7] (indices in SharedValueIndices that have a value of 0, i.e. where A is in the shared values)
GetSortedIndicesIndices into source NativeArray sorted by value
ScheduleSchedule jobs to collect and sort shared values.