implement and modify API config interfaces

This commit is contained in:
James Seibel
2022-09-15 19:33:25 -05:00
parent 6fc31192c2
commit 14bd059a88
18 changed files with 314 additions and 422 deletions
@@ -31,9 +31,9 @@ import com.seibel.lod.api.items.interfaces.config.IDhApiConfig;
* Note: Fake chunks are NOT saved in Minecraft's vanilla save system.
*
* @author James Seibel
* @version 2022-7-11
* @version 2022-9-15
*/
public interface IDhApiWorldGeneration
public interface IDhApiWorldGenerationConfig
{
/**
@@ -26,9 +26,9 @@ import com.seibel.lod.api.items.interfaces.config.IDhApiConfig;
* Distant Horizons' OpenGL buffer configuration.
*
* @author James Seibel
* @version 2022-7-5
* @version 2022-9-15
*/
public interface IDhApiBuffers
public interface IDhApiBuffersConfig
{
/** Defines how geometry data is uploaded to the GPU. */
@@ -26,9 +26,9 @@ import com.seibel.lod.api.items.interfaces.config.IDhApiConfig;
* Distant Horizons' debug configuration.
*
* @author James Seibel
* @version 2022-7-5
* @version 2022-9-15
*/
public interface IDhApiDebugging
public interface IDhApiDebuggingConfig
{
/** Can be used to debug the standard fake chunk rendering. */
IDhApiConfig<EDebugMode> getDebugRenderModeConfig();
@@ -27,9 +27,9 @@ import com.seibel.lod.api.items.interfaces.config.IDhApiConfig;
* Distant Horizons' graphics/rendering configuration.
*
* @author James Seibel
* @version 2022-7-11
* @version 2022-9-15
*/
public interface IDhApiGraphics
public interface IDhApiGraphicsConfig
{
//========================//
@@ -40,10 +40,10 @@ public interface IDhApiGraphics
IDhApiConfig<Integer> getChunkRenderDistanceConfig();
/**
* Simplified version of {@link IDhApiGraphics#getRenderingModeConfig()}
* Simplified version of {@link IDhApiGraphicsConfig#getRenderingModeConfig()}
* that only enables/disables the fake chunk rendering. <br><br>
*
* Changing this config also changes {@link IDhApiGraphics#getRenderingModeConfig()}'s value.
* Changing this config also changes {@link IDhApiGraphicsConfig#getRenderingModeConfig()}'s value.
*/
IDhApiConfig<Boolean> getRenderingEnabledConfig();
@@ -53,7 +53,7 @@ public interface IDhApiGraphics
* The debug renderer is used to confirm rendering is working at and will draw
* a single multicolor rhombus on the screen in skybox space (AKA behind MC's rendering). <br><br>
*
* Changing this config also changes {@link IDhApiGraphics#getRenderingEnabledConfig()}'s value.
* Changing this config also changes {@link IDhApiGraphicsConfig#getRenderingEnabledConfig()}'s value.
*/
IDhApiConfig<ERendererMode> getRenderingModeConfig();
@@ -21,6 +21,7 @@ package com.seibel.lod.api.items.interfaces.config.client;
import com.seibel.lod.api.items.enums.rendering.*;
import com.seibel.lod.api.items.interfaces.config.IDhApiConfig;
import com.seibel.lod.api.items.objects.config.DhApiConfig;
/**
* Distant Horizons' fog configuration. <br><br>
@@ -30,9 +31,9 @@ import com.seibel.lod.api.items.interfaces.config.IDhApiConfig;
* these settings will only affect Distant horizons' fog.
*
* @author James Seibel
* @version 2022-7-11
* @version 2022-9-15
*/
public interface IDhApiGraphicsFog
public interface IDhApiGraphicsFogConfig
{
//====================//
@@ -103,7 +104,7 @@ public interface IDhApiGraphicsFog
IDhApiConfig<EHeightFogMode> getHeightFogModeConfig();
/**
* Defines the height fog's base height if {@link IDhApiGraphicsFog#getHeightFogModeConfig()}
* Defines the height fog's base height if {@link IDhApiGraphicsFogConfig#getHeightFogModeConfig()}
* is set to use a specific height.
*/
IDhApiConfig<Double> getHeightFogBaseHeightConfig();
@@ -126,5 +127,4 @@ public interface IDhApiGraphicsFog
/** Defines the height fog's density. */
IDhApiConfig<Double> getHeightFogDensityConfig();
}
@@ -26,9 +26,9 @@ import com.seibel.lod.api.items.interfaces.config.IDhApiConfig;
* Distant Horizons' client-side multiplayer configuration.
*
* @author James Seibel
* @version 2022-7-5
* @version 2022-9-15
*/
public interface IDhApiMultiplayer
public interface IDhApiMultiplayerConfig
{
/**
@@ -25,9 +25,9 @@ import com.seibel.lod.api.items.interfaces.config.IDhApiConfig;
* Distant Horizons' threading configuration.
*
* @author James Seibel
* @version 2022-7-5
* @version 2022-9-15
*/
public interface IDhApiThreading
public interface IDhApiThreadingConfig
{
/**
@@ -6,13 +6,15 @@ import com.seibel.lod.core.interfaces.config.IConverter;
import com.seibel.lod.core.interfaces.config.converters.DefaultConverter;
/**
* A wrapper used to interface with Distant Horizon's Config.
* A wrapper used to interface with Distant Horizon's Config. <br> <br>
*
* When using this object you need to explicitly define the generic types,
* otherwise Intellij won't do any type checking and the wrong types can be used. <br>
* For example a method returning IDhApiConfig<Integer> when the config should be a Boolean.
*
* @param <apiType>
* @param <apiType> The datatype you, an API dev will use.
* @param <coreType> The datatype Distant Horizons uses in the background; implementing developers can ignore this.
*
* @author James Seibel
* @version 2022-6-30
*/