KONOEクラスライブラリ開発者のために
KONOEクラスライブラリを開発する人のためにプログラム上の
技法などのメモや課題をまとめておきます。
やらなければならない仕事
systemパッケージ
namespace
- システム全体で参照する名前空間です。現在,同一ホスト内でのみ
共有できるものになっていますが,ネットワーク全体で共有できる
ものにする必要があります。
filemanager
- ファイルシステムの管理機能が必要です。これはUNIXのファイルシステムを
利用し,ファイルの内容がオブジェクトであることまでを認識できる
もので,しかもネットワーク透過なものでなければなりません。
database
- オブジェクトデータベースをどのように実装するかは,非常に
重要な課題です。オブジェクト入出力と名前空間,ファイル管理を
元に実装します。
messaging
- プロセス間の通信に基づいた制御機構を実装します。メッセージ受信を
ほかのデータ転送などと矛盾無く行うスキームを導入する必要があります。
systemlogging
- KONOEのシステム内で発生する様々な事象を記録する機能を実装します。
daqパッケージ
hardware
- 実際のハードウエア(CAMACやVMEなど)との入出力を実装します。この
ためには割り込み処理などデバイスドライバレベルの作業が必要です。
daqprocess
- データ収集の枠組みを記述するプロセスクラスを実装する必要が
あります。
analysisパッケージ
trend
- 刻々と変化する様々な物理量を記録する,ペンレコーダのような
機能を実装します。
uiパッケージ
objectsocket
- KONOEのほかの部分との通信の基本となるオブジェクトソケットを
汎用のものとして実装します。
drawing
- 描画機能の基本となるクラスを整理します。グラフに用いられる
軸や,様々なプロットを構成する部品をそろえる必要があります。
clickable
- ユーザインターフェースの基本部品をそろえます。特に画面に
配置されたアイコンの操作に関係する,描画やイベント処理などの
部品が必要です。
histogramviewer
- 上述の部品の組み合わせにより,ヒストグラム表示アプレットを
整備します。
eventdisplay
- 上述の部品の組み合わせにより,イベントディスプレイアプレットを
用意します。
クラス開発にあたってのメモ
デストラクタについて
- テンプレートを使ったクラスを継承した場合,その親クラスに
デストラクタがあり,継承クラスに定義されない場合,一部の
システムでは親クラスのデストラクタが実体化されないという
問題が起こる場合があります。(SGIのldなど)対処方法として
例えばKonoeListを実体化したクラスを継承する場合,必ず
デストラクタを定義してください。
入出力可能なクラス
- KONOEではKonoeStreamableObjectを継承することによって
クラスのオブジェクトを入出力可能にしています。そこでは
バイト列に変換するときにつけるべきヘッダやオフセットの
計算などを正しく行う必要があります。詳しくはこちらを
ご覧下さい。(準備中)
[ File = konoe/src/remark.html] last modified = 06-Jun-1998
KONOEコラボレーション
konoe-req@konoe.kek.jp