Class VulkanDebugUtilsSLF4JRouted

java.lang.Object
com.io7m.jcoronado.extensions.ext_debug_utils.api.VulkanDebugUtilsSLF4JRouted
All Implemented Interfaces:
VulkanDebugUtilsMessengerCallbackEXTType

public final class VulkanDebugUtilsSLF4JRouted extends Object implements VulkanDebugUtilsMessengerCallbackEXTType
A convenience callback that delegates logging to SLF4J, routing messages to different loggers based on their properties.

In contrast to VulkanDebugUtilsSLF4J, which logs all messages to a single logger, this callback asks a VulkanDebugUtilsLoggerRouterType which logger should handle each message.

  • Constructor Details

    • VulkanDebugUtilsSLF4JRouted

      public VulkanDebugUtilsSLF4JRouted(VulkanDebugUtilsLoggerRouterType inRouter)
      Construct a callback.
      Parameters:
      inRouter - The logger router
    • VulkanDebugUtilsSLF4JRouted

      public VulkanDebugUtilsSLF4JRouted(VulkanDebugUtilsLoggerRouterType inRouter, VulkanDebugUtilsInfoBehavior inInfoBehavior)
      Construct a callback.
      Parameters:
      inRouter - The logger router
      inInfoBehavior - The info behavior
    • VulkanDebugUtilsSLF4JRouted

      public VulkanDebugUtilsSLF4JRouted(org.slf4j.Logger inGeneralLogger, org.slf4j.Logger inValidationLogger, org.slf4j.Logger inPerformanceLogger)
      Construct a callback that routes messages to one of three loggers based on the message type flags.

      Messages with the VALIDATION type are logged to inValidationLogger, messages with the PERFORMANCE type are logged to inPerformanceLogger, and all other messages are logged to inGeneralLogger. If a message carries multiple type flags, the most specific flag takes precedence: VALIDATION, then PERFORMANCE, then GENERAL.

      Parameters:
      inGeneralLogger - The logger for general messages
      inValidationLogger - The logger for validation messages
      inPerformanceLogger - The logger for performance messages
    • VulkanDebugUtilsSLF4JRouted

      public VulkanDebugUtilsSLF4JRouted(org.slf4j.Logger inGeneralLogger, org.slf4j.Logger inValidationLogger, org.slf4j.Logger inPerformanceLogger, VulkanDebugUtilsInfoBehavior inInfoBehavior)
      Construct a callback that routes messages to one of three loggers based on the message type flags.

      Messages with the VALIDATION type are logged to inValidationLogger, messages with the PERFORMANCE type are logged to inPerformanceLogger, and all other messages are logged to inGeneralLogger. If a message carries multiple type flags, the most specific flag takes precedence: VALIDATION, then PERFORMANCE, then GENERAL.

      Parameters:
      inGeneralLogger - The logger for general messages
      inValidationLogger - The logger for validation messages
      inPerformanceLogger - The logger for performance messages
      inInfoBehavior - The info behavior
  • Method Details