KonoeCAMACModule

クラス概要

このクラスは抽象クラスです。

全てのCAMACモジュールが備えるべきメンバー関数、及びメンバーデータをこの クラスで定義しています。

例えば、クリアや初期化といった命令は全てのCAMACモジュールが備えるべき動 作であるのでそれらへのインターフェースとして、このクラスでは純粋仮想関数 clear()やinitialize()を定義しています。
またステーション番号やチャンネル数といった情報もモジュール固有のものでしょ う。そういった情報はこのクラスでメンバーデータとして定義づけられています。

したがって、全てのCAMACモジュールクラスはこのクラスから派生したクラスで なくてはなりません。

実際のCAMACモジュールクラスはさらにこのクラスを継承した KonoeCAMAC16bitModuleあるいは KonoeCAMAC24bitModuleを継承しま す。

継承関係

KonoeHardwareModuleを継承します。

公開メンバー関数

KonoeCAMACModule( )
デフォルトのコンストラクタです。何もしません。
KonoeCAMACModule( const KonoeCAMACCrate* crate, KInt aStationNumber, KInt aChannel )
コンストラクタです。
KonoeCAMACCrate型へのポインタと 自身の位置(ステーション番号)、チャンネル数を与えることにより、メン バーデータstationNumbernumberOfChannelが設定されます。
~KonoeCAMACModule( )
デストラクタです。何もしません。
void setStationNumber( KInt aStationNumber )
メンバーデータstationNumberの値を設定 します。
KInt getStationNumber() const
メンバーデータstationNumberの値を取得 します。
void showStationNumber() const
メンバーデータstationNumberの値を出力 します。
void setChannel( KInt aChannel )
メンバーデータnumberOfChannelの値を 設定します。
KInt getChannel() const
メンバーデータnumberOfChannelの値を 取得します。
Kshort getQ() const
モジュールが命令を受けつけたか否かを示すQ値を取得します。
void showQ() const
Q値を出力します。
KShort getX() const
モジュールが命令を実行したか否かを示すX値を取得します。
void showX() const
X値を出力します。
KInt getDataSize()
メンバーデータnumberOfChannelを取得 します。
KInt fillData( KonoeDataElement* anElement, KonoeModuleSubaddress* subAddress )
指定したチャンネルにデータをフィルします。
KonoeDataSegement* getDataSegment( KInt segmentTag )
モジュールにフィルされたデータを全チャンネル取得します。
void initialize( )
モジュールを初期化します。
void clear()
モジュールをクリアします。
void update()
モジュールを更新します。
void dump( ostream& os )
モジュールのステーション番号を出力します。

制限つきメンバー関数

KUInt naf( KInt subAddress, KInt function )
サブアドレス(A)、ファンクション番号(F)を与えることによりデバイスドラ イバが用いるNAF値を得ます。ユーザがこの関数を使用することはありませ ん。

メンバーデータ

struct CamacCardDescriptor* card
デバイスドライバが使用するメンバーデータです。
ユーザが直接この構造体を操作する必要はありません。
struct CamacData data
CAMACモジュールと計算機の間でやり取りされるモジュールにフィルされる べきデータはこの構造体を媒介します。
ユーザが直接この構造体を操作する必要はありません。
KInt stationNumber
モジュールの位置です。
KInt numberOfChannel
モジュールが使用するチャンネルの数です。

定数

ITEM_WIDTH
標準出力の際、マニピュレータが使用します。その値は16です。
VALUE_WIDTH
標準出力の際、マニピュレータが使用します。その値は10です。

$Id: KonoeCAMACModule.html,v 1.7 2002/03/16 08:11:48 iwai Exp $
KONOEコラボレーション konoe-req@konoe.kek.jp