leJOS NXJのクラス一覧

さっそくleJOS NXJをダウンロードして、アーカイブを解凍して、javadocでパッケージ、クラス、インタフェースを確認してみました。以前のleJOSとは、そこまで大きく変わるものではないようですね。これで、bluetoothが利用できるようになったら、lejos.commのようなパッケージが追加されるんでしょう。

パッケージ

まずパッケージ。java.io,java.lang,java.utilは、Java APIのサブセットです。LEGOの制御プログラミングに必要なものだけが入っています。

lejos.* は、ロボット制御に必要なものですね。lejos.nxt パッケージは、モータやセンサの制御に必要なもの。lejos.robotics は、ロボット工学特有のもの?ナビゲータとかそういうのですね。最後に、lejos.utilはユーティリティクラスなどが入ってます。

  • java.io Input/Output support (see josx.rcxcomm).
  • java.lang Core Java classes
  • java.util Utilities
  • lejos.nxt Access to NXT sensors, motors, etc.
  • lejos.robotics Robotic classes
  • lejos.util More utility classes

lejos.nxt パッケージ

Access to NXT sensors, motors, etc.

見る限り大きく変わってはいないでしょう。音センサが追加されてるぐらいでしょうか。あ、超音波センサがないですけど、対応してないのかな。

インタフェース

  • ButtonListener Abstraction for receiver of button events.
  • ListenerCaller Interface for calling calling lejos listeners.
  • PortListener

クラス

  • Battery Provides access to Battery.
  • Button Abstraction for an NXT button.
  • LCD LCD routines.
  • LightSensor Abstraction for a NXT light sensor.
  • Memory Provides access to memory.
  • Motor Abstraction for a motor.
  • Poll Provides blocking access to events from the NXT.
  • Port Abstraction for a NXT input port.
  • RCXLightSensor Abstraction for an RCX light sensor.
  • Sound NXT sound routines.
  • SoundSensor Abstraction for a NXT sound sensor.
  • TouchSensor Abstraction for a NXT touch sensor.

lejos.robotics パッケージ

ビヘイビアやナビゲータなど、ロボット工学のプログラミングに関係するものがありますね。TachoNavigatorなどは、新しいかもしれないです。

あ、ビヘイビアやナビゲータに関しては、マインドストーム・プログラミング入門―LEGOでメカトロニクス/ロボティクスを学習する (COMPUTER TECHNOLOGY) でも紹介されていますので、こちらを参照してください。

マインドストーム・プログラミング入門―LEGOでメカトロニクス/ロボティクスを学習する (COMPUTER TECHNOLOGY)

マインドストーム・プログラミング入門―LEGOでメカトロニクス/ロボティクスを学習する (COMPUTER TECHNOLOGY)

インタフェース

  • Behavior The Behavior interface represents an object embodying a specific behavior belonging to a robot.
  • Navigator The Navigator interface contains methods for performing basic navigational movements.

クラス

  • Activity An activity that operates in coordination with other activities.
  • ActivityBase Useful base class.
  • Arbitrator Arbitrator controls which behavior should currently be active in a behavior control system.
  • SimpleNavigator The SimpleNavigator class contains methods for performing basic navigational movements.
  • TachoNavigator The TachoNavigator class contains methods for performing basic navigational movements.

lejos.utilパッケージ

Rechyclableとかって、以前のleJOSにありましたかね。ちょっと記憶が定かではないですけど。

どうやら、メモリが小さいので空間効率の良い配列が容易されているみたいです。

インタフェース

  • Recyclable Represents a recyclable object.
  • TimerListener Listener used with Timer.

クラス

  • AbstractRecyclable Represents a recyclable object.
  • ArrayRecycler An array recycler for Object arrays.
  • Assertion Class used in debugging to test assertions.
  • RecyclableArray A recyclable array.
  • Recycler An abstract object recycler.
  • Timer Timer object, with some similar functionality to java.Swing.Timer.

まとめ

以上、leJOS NXJのクラスリストでした。あまりクラスの数も多くないですね。
以前のleJOSとの違いは、(APIに関しては) 新しいセンサに対応したという程度ですかね。詳しくは、サンプルを調べていきたいと思います。