Class MusicQueueLoader

java.lang.Object
com.badlogic.gdx.assets.loaders.AssetLoader<T,P>
com.badlogic.gdx.assets.loaders.AsynchronousAssetLoader<MusicQueue,MusicQueueLoader.MusicQueueParameters>
edu.cornell.gdiac.assets.MusicQueueLoader

public class MusicQueueLoader extends com.badlogic.gdx.assets.loaders.AsynchronousAssetLoader<MusicQueue,MusicQueueLoader.MusicQueueParameters>
This class is an AssetLoader to load MusicQueue assets.

All music queues are named symbolically, since that may span multiple audio sources. They are fully defined by their loader parameters.

  • Constructor Details

    • MusicQueueLoader

      public MusicQueueLoader()
      Creates a new MusicBufferLoader with an internal file resolver
    • MusicQueueLoader

      public MusicQueueLoader(com.badlogic.gdx.assets.loaders.FileHandleResolver resolver)
      Creates a new MusicBufferLoader with the given file resolver
      Parameters:
      resolver - The file resolver
  • Method Details

    • getLoadedMusic

      protected MusicQueue getLoadedMusic()
      Returns the MusicQueue instance currently loaded by this loader.

      If nothing has been loaded, this returns null.

      Returns:
      the MusicQueue instance currently loaded by this loader.
    • loadAsync

      public void loadAsync(com.badlogic.gdx.assets.AssetManager manager, String fileName, com.badlogic.gdx.files.FileHandle file, MusicQueueLoader.MusicQueueParameters params)
      Loads thread-safe part of the asset and injects any dependencies into the AssetManager.

      This is used to load non-OpenGL parts of the asset that do not require the context of the main thread. As audio is thread-safe, this method does all of the work.

      Specified by:
      loadAsync in class com.badlogic.gdx.assets.loaders.AsynchronousAssetLoader<MusicQueue,MusicQueueLoader.MusicQueueParameters>
      Parameters:
      manager - The asset manager
      fileName - The name of the asset to load
      file - The resolved file to load
      params - The parameters to use for loading the asset
    • loadSync

      public MusicQueue loadSync(com.badlogic.gdx.assets.AssetManager manager, String fileName, com.badlogic.gdx.files.FileHandle file, MusicQueueLoader.MusicQueueParameters params)
      Loads the main thread part of the asset.

      This is used to load OpenGL parts of the asset that require the context of the main thread.

      Specified by:
      loadSync in class com.badlogic.gdx.assets.loaders.AsynchronousAssetLoader<MusicQueue,MusicQueueLoader.MusicQueueParameters>
      Parameters:
      manager - The asset manager
      fileName - The name of the asset to load
      file - The resolved file to load
      params - The parameters to use for loading the asset
    • resolve

      public com.badlogic.gdx.files.FileHandle resolve(String fileName)
      Eliminates the file resolution, as all file names are logical.
      Overrides:
      resolve in class com.badlogic.gdx.assets.loaders.AssetLoader<MusicQueue,MusicQueueLoader.MusicQueueParameters>
      Parameters:
      fileName - Pointless
    • getDependencies

      public com.badlogic.gdx.utils.Array<com.badlogic.gdx.assets.AssetDescriptor> getDependencies(String fileName, com.badlogic.gdx.files.FileHandle file, MusicQueueLoader.MusicQueueParameters params)
      Returns the other assets this asset requires to be loaded first.

      This method may be called on a thread other than the GL thread. It may return null if there are no dependencies.

      Specified by:
      getDependencies in class com.badlogic.gdx.assets.loaders.AssetLoader<MusicQueue,MusicQueueLoader.MusicQueueParameters>
      Parameters:
      fileName - The name of the asset to load
      file - The resolved file to load
      params - parameters for loading the asset
      Returns:
      the other assets this asset requires to be loaded first.