Skip to content
This repository was archived by the owner on Jul 6, 2021. It is now read-only.

Reference

Porrith Suong edited this page Aug 30, 2019 · 1 revision

ReactiveDisposal

DisposalGroup DisposalTriggerGroup
BaseBlob\`1 ReactiveDisposalSystem\`1
DisposalJob UnmanagedMemTag

DisposalGroup

The system group that will actually run and schedule the destruction of whatever entity and dispose any kind of unmanaged memory.

DisposalTriggerGroup

Trigger any kind of entity destruction in this group.

BaseBlob`1

Allows a MonoBehaviour to construct Blob structures with the correct minimal archetype. Blobs are not managed the MonoBehaviour.

ConstructBlob

Must be called in AttachToEntity so that the BlobAssetReference is contained by a ISystemStateComponentData.

ReactiveDisposalSystem`1

The base class to implement which allows for scheduling the batch release of memory on a per entity basis.

Type Parameters

  • T - struct that implements ISystemStateComponentData and IDisposable

DisposalJob

The primary disposal job to run which uses an EntityCommandBuffer to finalize the entity's destruction by removing a tag.

ReactiveDisposal.Unmanaged.Systems.ReactiveDisposalSystem`1.ScheduleDisposalJob(inputDeps)

Convenience function to schedule the disposal job. The subsequent job can be chained from previous jobs or to subsequent jobs.

Name Description
inputDeps Unity.Jobs.JobHandle
The previously scheduled job's dependency.

Returns

A JobHandle with the information of when to run the job.

UnmanagedMemTag

This is a tag component to ensure that any entities with unmanaged memory must be managed by reactive systems.