# Hierarchy For Package icyllis.arc3d.engine

Package Hierarchies:

- All Packages

## Class Hierarchy

- java.lang.Object
  - java.util.AbstractCollection<E> (implements java.util.Collection<E>)
    - java.util.AbstractQueue<E> (implements java.util.Queue<E>)
      - icyllis.arc3d.engine.PriorityQueue<E>
  - java.util.AbstractMap<K,V> (implements java.util.Map<K,V>)
    - java.util.HashMap<K,V> (implements java.lang.Cloneable, java.util.Map<K,V>, java.io.Serializable)
      - icyllis.arc3d.engine.LinkedListMultimap<K,V>
  - icyllis.arc3d.engine.BackendFormat
  - icyllis.arc3d.engine.BackendImage
  - icyllis.arc3d.engine.BackendRenderTarget
  - icyllis.arc3d.engine.BackendSemaphore
  - icyllis.arc3d.engine.BaseContextOptions
    - icyllis.arc3d.engine.ContextOptions
    - icyllis.arc3d.engine.RecordingContextOptions
  - icyllis.arc3d.engine.BlendInfo
  - icyllis.arc3d.engine.Buffer.ResourceKey (implements icyllis.arc3d.engine.IResourceKey)
  - icyllis.arc3d.engine.BufferImageCopyData
  - icyllis.arc3d.engine.BufferViewInfo
  - icyllis.arc3d.engine.Caps
  - icyllis.arc3d.engine.CommandBuffer
  - icyllis.arc3d.engine.DataUtils
  - icyllis.arc3d.engine.DepthStencilSettings
  - icyllis.arc3d.engine.DepthStencilSettings.Face
  - icyllis.arc3d.engine.Device (implements icyllis.arc3d.engine.Engine)
  - icyllis.arc3d.engine.Device.Stats
  - icyllis.arc3d.engine.DrawableInfo
  - icyllis.arc3d.engine.DriverBugWorkarounds
  - icyllis.arc3d.engine.FlushInfo
  - icyllis.arc3d.engine.FramebufferCache (implements java.lang.AutoCloseable)
  - icyllis.arc3d.engine.FramebufferDesc
  - icyllis.arc3d.engine.FramebufferDesc.ColorAttachmentDesc
  - icyllis.arc3d.engine.FramebufferDesc.DepthStencilAttachmentDesc
  - icyllis.arc3d.engine.GpuBufferPool
  - icyllis.arc3d.engine.GpuRenderTarget.ResourceKey (implements icyllis.arc3d.engine.IResourceKey)
  - icyllis.arc3d.engine.Image.ResourceKey (implements icyllis.arc3d.engine.IResourceKey)
  - icyllis.arc3d.engine.ImageDesc
  - icyllis.arc3d.engine.ImageMutableState
  - icyllis.arc3d.engine.ImageProxyCache
  - icyllis.arc3d.engine.ImageProxyView (implements java.lang.AutoCloseable)
  - icyllis.arc3d.engine.ImageViewDesc
  - icyllis.arc3d.engine.ImageViewProxy.LazyCallbackResult
  - icyllis.arc3d.engine.Key
    - icyllis.arc3d.engine.KeyBuilder
  - icyllis.arc3d.engine.OpFlushState (implements icyllis.arc3d.engine.MeshDrawTarget)
  - icyllis.arc3d.engine.OpsRenderPass
  - icyllis.arc3d.engine.PathUtils
  - icyllis.arc3d.engine.PipelineDesc
  - icyllis.arc3d.engine.PipelineDesc.GraphicsPipelineInfo
  - icyllis.arc3d.engine.PipelineDesc.SamplerInfo
  - icyllis.arc3d.engine.PipelineDesc.UniformBlockInfo
  - icyllis.arc3d.engine.PipelineKey (implements icyllis.arc3d.engine.IUniqueKey)
  - icyllis.arc3d.engine.ProcessorAnalyzer
  - icyllis.arc3d.engine.QueueManager
  - icyllis.arc3d.core.RefCnt (implements icyllis.arc3d.core.RefCounted)
    - icyllis.arc3d.engine.Context
      - icyllis.arc3d.engine.ImmediateContext
      - icyllis.arc3d.engine.RecordingContext
    - icyllis.arc3d.engine.CpuBuffer
    - icyllis.arc3d.engine.ImageViewProxy
    - icyllis.arc3d.engine.ManagedResource
      - icyllis.arc3d.engine.ComputePipeline
      - icyllis.arc3d.engine.Framebuffer
      - icyllis.arc3d.engine.GraphicsPipeline
      - icyllis.arc3d.engine.RecycledResource
    - icyllis.arc3d.engine.ReleaseCallback
    - icyllis.arc3d.engine.RenderTask
      - icyllis.arc3d.engine.TextureResolveTask
    - icyllis.arc3d.engine.SurfaceProxy
      - icyllis.arc3d.engine.RenderTargetProxy
    - icyllis.arc3d.engine.UniformDataManager
  - icyllis.arc3d.engine.RenderPassDesc
  - icyllis.arc3d.engine.RenderPassDesc.ColorAttachmentDesc
  - icyllis.arc3d.engine.RenderPassDesc.DepthStencilAttachmentDesc
  - icyllis.arc3d.engine.RenderTaskManager
  - icyllis.arc3d.engine.Resource (implements icyllis.arc3d.core.RefCounted)
    - icyllis.arc3d.engine.Buffer
    - icyllis.arc3d.engine.GpuSurface
      - icyllis.arc3d.engine.GpuRenderTarget
    - icyllis.arc3d.engine.Image
    - icyllis.arc3d.engine.Sampler
  - icyllis.arc3d.engine.ResourceCache
  - icyllis.arc3d.engine.ResourceProvider
  - icyllis.arc3d.engine.SamplerDesc (implements icyllis.arc3d.engine.IResourceKey)
  - icyllis.arc3d.compiler.ShaderCaps
    - icyllis.arc3d.engine.ShaderCaps
  - icyllis.arc3d.engine.ShaderVar
  - icyllis.arc3d.engine.SharedResourceCache
  - icyllis.arc3d.engine.SharedResourceCache.Stats
  - icyllis.arc3d.engine.SurfaceAllocator
  - icyllis.arc3d.engine.SurfaceProxy.LazyCallbackResult
  - icyllis.arc3d.engine.Swizzle
  - icyllis.arc3d.engine.TaskManager
  - icyllis.arc3d.engine.ThreadSafeCache
  - icyllis.arc3d.engine.TopologicalSort
  - icyllis.arc3d.engine.UploadBufferManager
  - icyllis.arc3d.engine.VertexInputLayout
  - icyllis.arc3d.engine.VertexInputLayout.Attribute
  - icyllis.arc3d.engine.VertexInputLayout.AttributeSet (implements java.lang.Iterable<T>)

## Interface Hierarchy

- java.lang.AutoCloseable
  - icyllis.arc3d.engine.ImageViewProxy.LazyInstantiateCallback
  - icyllis.arc3d.engine.SurfaceProxy.LazyInstantiateCallback
- icyllis.arc3d.engine.Engine
- icyllis.arc3d.engine.Engine.BackendApi
- icyllis.arc3d.engine.Engine.BudgetType
- icyllis.arc3d.engine.Engine.BufferUsageFlags
- icyllis.arc3d.engine.Engine.DepthStencilFlags
- icyllis.arc3d.engine.Engine.GLBackendState
- icyllis.arc3d.engine.Engine.ImageCreateFlags
- icyllis.arc3d.engine.Engine.ImageType
- icyllis.arc3d.engine.Engine.IndexType
- icyllis.arc3d.engine.Engine.IOType
- icyllis.arc3d.engine.Engine.LoadOp
- icyllis.arc3d.engine.Engine.LoadStoreOps
- icyllis.arc3d.engine.Engine.PrimitiveType
- icyllis.arc3d.engine.Engine.ShaderFlags
- icyllis.arc3d.engine.Engine.StoreOp
- icyllis.arc3d.engine.Engine.SurfaceOrigin
- icyllis.arc3d.engine.Engine.VertexAttribType
- icyllis.arc3d.engine.FlushInfo.FinishedCallback
- icyllis.arc3d.engine.FlushInfo.SubmittedCallback
- icyllis.arc3d.engine.IResourceKey
- icyllis.arc3d.engine.ISurface
- icyllis.arc3d.engine.IUniqueKey
- icyllis.arc3d.engine.Mesh
- icyllis.arc3d.engine.MeshDrawTarget
- icyllis.arc3d.engine.PriorityQueue.Access<E>
- icyllis.arc3d.engine.SurfaceVisitor
- icyllis.arc3d.engine.TopologicalSort.Access<T>

## Enum Class Hierarchy

- java.lang.Object
  - java.lang.Enum<E> (implements java.lang.Comparable<T>, java.lang.constant.Constable, java.io.Serializable)
    - icyllis.arc3d.engine.Caps.BlendEquationSupport