ATOMにおけるプログラミング

ATOMは、クラスメソッドとインスタンスメソッドをプラグイン開発者が自由に定義することができます。同期型、非同期型のどちらのメソッドも実装することができますが、Qmonus SDKは、非同期IOループのシングルスレッドモデルで動作しているため、外部入出力を伴う処理を実装する場合は必ず非同期型を使用するようにしてください。

ATOMメソッドの名前空間

ATOMのメソッド名前空間では、ビルトインオブジェクトの他にlogger__ROOT__アクセッサとcontextatommodel共通コンテキストが含まれています。

  • ビルトインオブジェクト Docs » リファレンス » ビルトインオブジェクトを参照してください。

  • logger: Scenarioログにログを出力する関数です。ログレベルに応じてカラーリングされます。ログレベルは、debuginfowarningerrorcriticalの5種類です。

logger.debug("DEBUGレベル")
logger.info("INFOレベル")
logger.warning("WARNレベル")
logger.error("ERRORレベル")
logger.critical("CRITレベル")
  • __ROOT__:
    本アクセッサ変数には、ATOMインスタンスツリー上で最初にメソッドを起動したインスタンスへの参照が格納されています。クラスメソッドや同期型インスタンスメソッドでは参照できません。状態マシンに登録されているメソッド伝搬対象のメソッドでなければなりません。これは上位インスタンスからメソッド伝搬されてきた場合にインスタンスツリー上をサーチして自身以外のオブジェクトの情報を取得したり、操作するために参照できます。

  • 共通コンテキスト:
    Docs » 名前空間 » リファレンス » 共通コンテキストを参照してください。