VI. Simtoolsライブラリ

目次
AppendFile — ファイル出力をアペンドモードで実行するクラス。
InFile — ファイル入力を実行するクラス。
NSelect — あるコレクションからランダムなNエレメントを、厳密に選択するクラス。
ObjectLoader — あるオブジェクトのインスタンス変数をファイルからロードするクラス。
ObjectSaver — あるオブジェクトのインスタンス変数をファイルに保存するクラス。
OutFile — ファイル出力を実行するクラス。
QSort — コレクションをソートするクラス。
UName — ユニークな名前(例えば"critter1"、"critter2"など)を作成するクラス。
General — 一般シミュレーションツール。

1. 依存関係

以下は、<simtools.h>がインポートする他のヘッダファイルです。
#import <objectbase.h>
基本的なオブジェクトサポートを提供するために、objectbaseライブラリインターフェイスがインクルードされます。今は、デフォルトではrandomライブラリをインクルードしません。デフォルトの乱数ジェネレータを使用するときは、明示的にそれをインクルードする必要があります。

特別なグローバル関数 - global.h。initSwarm()を呼び出したいとき、また各シミュレーションで生成されるあらかじめ初期化された重要なオブジェクト群へのアクセスを獲得したいときは(たとえばprobeDisplayManager)、そのコードにsimtools.hをインクルードしなければなりません。

2. 互換性

  • 1.0.5 -> 1.1. simtoolsは、simtoolsとsimtoolsguiという2つに分離しました。GUIに関連するクラスはすべてsimtoolsguiに移動したため、純粋なバッチモードのシミュレーション(Tk/Tcl/BLT、Java AWTや、その他のGUIツールキットを必要としないシミュレーション)をコンパイル、リンクすることができます。

  • 1.0.4 -> 1.0.5. GUISwarmは、GUICompositeクラスから継承するようになりました。GUICompositeはtkobjcプリミティブへのアーカイブキーのパススルーを処理するため、setControlPanelGeometryRecordNameメソッドが不要になり、その代わりにマクロSET_WINDOW_GEOMETRY_RECORD_NAMEが提供されています。

  • 1.0.3 -> 1.0.4. すべての関数に下位互換があります。追加機能もありますが、解説されなくなった機能もあります。

ドキュメンテーションと実装の現状

simtoolsライブラリは、1.0.4のsimtoolsライブラリの状態にアップグレードを重ねてきました。したがって、インターフェイスはライブラリインターフェイス仕様に従い、ドキュメンテーションの書式はこれを反映するようになっています。新しい機能以外にユーザに与える影響はありません。

改訂履歴 (simtools)