/* * This file is free for everyone to use under the Creative Commons Zero license. */ /** * Provides resources to Minecraft, including resource access, provision, and reloading. * *

"Data" as in "Data Packs" is considered resource as well. * *

Here is a quick overview on the resource access and provision APIs of Minecraft: *

* * * * * * * * * * * * * * * * * * * * * * * * *
Resource Access APIs
ClassUsage
{@link Resource}Accesses to binary data.
{@link ResourceFactory}Provides a resource given an {@link net.minecraft.util.Identifier}.
{@link ResourceManager}Exposes more resource access in addition to being a {@link ResourceFactory}.
{@link LifecycledResourceManager}A resource manager with a specific lifecycle, to fine-grain resource access.
{@link ResourceReloader}The most common accessor to resources, acting during {@linkplain * SimpleResourceReload#start reloads} to set up in-game contents. *
This is usually implemented by mods using resources.
* *
* * * * * * * * * * * * * * * * * * * * *
Resource Provision APIs
ClassUsage
{@link ResourcePack}Provides binary data based on queries. *
They are usually single-use, created by {@link ResourcePackManager} and provided * to {@link ReloadableResourceManager} in each reload.
{@link ResourcePackProfile}A user-friendly, persistent form of {@link ResourcePack}. Used to create resource * packs in reloads.
{@link ResourcePackProvider}Provides {@link ResourcePackProfile}s, so they are taken account of during reloads. *
This is usually implemented by mods providing resources.
{@link ResourcePackManager}Keeps track of {@link ResourcePackProvider}s and uses the profiles from the providers * to create {@link ResourcePack}s to send to {@link ReloadableResourceManager}s in each reload.
* *

In addition to these APIs, this package includes implementation details of the resource system. */ package net.minecraft.resource;