using Ghost.Core; using Ghost.Graphics.Contracts; namespace Ghost.Graphics.RHI; public interface IPipelineLibrary : IDisposable { /// /// Load pipeline library from disk. /// /// File path. If null, load default library. void InitializeLibrary(string? filePath); void SaveLibraryToDisk(string filePath); bool HasPipeline(Key128 key); Result> CompilePSO(ref readonly GraphicsPSODescriptor descriptor, ref readonly GraphicsCompiledResult compiled); }