kinugasa.game.logic

## クラス LogicManager

- java.lang.Object
- - kinugasa.contents.resource.Storage<T>
  - - kinugasa.contents.resource.DynamicStorage<GameLogic>
    - - kinugasa.game.logic.LogicManager

- すべての実装されたインタフェース:
    java.lang.Iterable<GameLogic>, Freeable, Loadable, Drawable

      public final class LogicManager
      extends DynamicStorage<GameLogic>
      implements Drawable

  複数のゲームロジックを管理するためのクラスです.

- - ### メソッドのサマリー

    All Methods Static Methods Instance Methods Concrete Methods
    修飾子とタイプ | メソッドと説明
    --- | ---
    `void` | `changeLogic(java.lang.String name)` 稼働中のロジックを変更します.
    `void` | `changeLogic(java.lang.String name, boolean free)` 稼働中のロジックを変更します.
    `void` | `changeLogic(java.lang.String name, boolean free, boolean load)` 稼働中のロジックを変更します.
    `void` | `draw(java.awt.Graphics2D g)` 現在使用しているロジックのdrawを呼び出します.
    `static LogicManager` | `getInstance()` インスタンスを取得します.
    `void` | `update()` 現在使用しているロジックのupdateを呼び出します.

    - ### クラスから継承されたメソッド kinugasa.contents.resource.DynamicStorage

      `exFree, free, free, freeAll, isLoaded, isLoaded, isLoadedAll, load, load, loadAll`

    - ### クラスから継承されたメソッド kinugasa.contents.resource.Storage

      `add, addAll, addAll, asList, clear, contains, contains, containsAll, get, getAll, getIfContains, getProperties, isEmpty, iterator, keySet, printAll, printAll, put, putAll, putAll, remove, remove, removeAll, removeAll, removeAll, size, toString`

    - ### クラスから継承されたメソッド java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

    - ### インタフェースから継承されたメソッド java.lang.Iterable

      `forEach, spliterator`

- - ### メソッドの詳細

    - #### getInstance

          public static LogicManager getInstance()

      インスタンスを取得します.
      戻り値:
        LogicManagerのインスタンスを返します。

    - #### changeLogic

          public void changeLogic(java.lang.String name)
                           throws NameNotFoundException

      稼働中のロジックを変更します. 次に実行されるロジックはnameという名前を持ちます。nameという名前のロジックが見つからない場合は例外を投げます。
      このメソッドでは、現在稼働しているロジックの解放(freeのコール)と新しいロジックのロード(loadのコール)を行います。
      パラメータ:
        `name` - 次に実行するロジックの名前を指定します。
      例外:
        `NameNotFoundException` - 指定した名前のロジックが含まれていない場合に投げられます。

    - #### changeLogic

          public void changeLogic(java.lang.String name,
                                  boolean free)
                           throws NameNotFoundException

      稼働中のロジックを変更します. 次に実行されるロジックはnameという名前を持ちます。nameという名前のロジックが見つからない場合は例外を投げます。
      このメソッドでは、新しいロジックのロード(loadのコール)を行います。
      パラメータ:
        `name` - 次に実行するロジックの名前を指定します。
        `free` - trueを指定すると現在稼働中のロジックの解放(freeのコール)を行います。
      例外:
        `NameNotFoundException` - 指定した名前のロジックが含まれていない場合に投げられます。

    - #### changeLogic

          public void changeLogic(java.lang.String name,
                                  boolean free,
                                  boolean load)
                           throws NameNotFoundException

      稼働中のロジックを変更します. 次に実行されるロジックはnameという名前を持ちます。nameという名前のロジックが見つからない場合は例外を投げます。
      パラメータ:
        `name` - 次に実行するロジックの名前を指定します。
        `free` - trueを指定すると現在稼働中のロジックの解放(freeのコール)を行います。
        `load` - trueを指定すると次に実行するロジックのロード(loadのコール)を行います。
      例外:
        `NameNotFoundException` - 指定した名前のロジックが含まれていない場合に投げられます。

    - #### update

          public void update()

      現在使用しているロジックのupdateを呼び出します.

    - #### draw

          public void draw(java.awt.Graphics2D g)

      現在使用しているロジックのdrawを呼び出します.
      定義:
        `draw` インタフェース内 `Drawable`
      パラメータ:
        `g` - 書き込むためのグラフィックスコンテキストを送信します。