1
0
mirror of https://github.com/ppy/osu.git synced 2025-03-31 06:27:18 +08:00
Dean Herbert a15828ab25 Introduce the concept of SkinComponents
Removes reliance on string lookups and better defines elements for introduction into database
2019-08-30 14:55:52 +09:00

26 lines
746 B
C#

// Copyright (c) ppy Pty Ltd <contact@ppy.sh>. Licensed under the MIT Licence.
// See the LICENCE file in the repository root for full licence text.
using System;
using osu.Framework.Audio.Sample;
using osu.Framework.Graphics;
using osu.Framework.Graphics.Textures;
using osu.Game.Audio;
namespace osu.Game.Skinning
{
/// <summary>
/// Provides access to skinnable elements.
/// </summary>
public interface ISkin
{
Drawable GetDrawableComponent(ISkinComponent component);
Texture GetTexture(string componentName);
SampleChannel GetSample(ISampleInfo sampleInfo);
TValue GetValue<TConfiguration, TValue>(Func<TConfiguration, TValue> query) where TConfiguration : SkinConfiguration;
}
}