KonoeCAMACCrate

クラス概要

CAMACクレートを表現するクラスです。
デバイスドライバを使用するため以下にあげるプロトタイプ宣言用ヘッダーファ イルがインクルードされます。 また、実際に動作させるには、 CAMAC用デバイスドライバが必要になります。

動作を確認するには当然のことながらCAMACクレートとその周辺機器等のハード ウェアが必要になります。

継承関係

KonoeDAQCrateBaseを継承します。

公開メンバー関数

KonoeCAMACCrate( const KChar* deviceNodeName, KInt idNumber )
コンストラクタです。
デバイスドライバが使用するノード名とクレートコントローラの識別番号 を引数に与えます。
struct CamacCardDescriptor* getCardDescriptor() const
メンバーデータのcardを返します。
KInt getStatus() const
メンバーデータのstatusを返します。
void showStatus() const
メンバーデータのstatusを出力します。
struct CamacCardDescriptor* open( const KChar* nodeName )
クレートコントローラに対し、open命令を出します。
void close()
クレートコントローラに対し、close命令を出します。
setID( KInt idNumber )
クレートコントローラの識別番号を設定します。
void reset()
クレートコントローラをリセットします。
void setI()
クレートコントローラを通じて各モジュールへ禁止命令を出します。
void removeI()
クレートコントローラを通じて各モジュールへ禁止解除の命令を出します。
void enableLAM()
各モジュールからのLAMを許可します。
void disableLAM()
各モジュールからのLAMを無視します。
void waitLAM( KUInt milliSec, KonoeCAMACModule* aModule )
指定したモジュールからのLAM信号を待ちます。
void waitLAM( KUInt milliSec, KonoeCAMACModule* module1, KonoeCAMACModule* module2 )
指定したモジュールからのLAM信号を待ちます。
KInt install ( KonoeCAMACModule* aModule )
モジュールをクレートにインストールします。
void update()
インストールされている各モジュールに更新命令を出します。
void initialize()
インストールされている各モジュールに初期化命令を出します。
void clear()
インストールされている各モジュールにクリア命令を出します。
KInt getLAM()
LAM信号を出しているモジュールのステーション番号を返します。
KInt isOnline()
クレートコントローラがオンラインかオフラインかを調べます。

非公開メンバー関数

void check() const
クレートコントローラの状態をチェックします。
KInt bitPattern( KInt stationNumber )
与えたステーション番号をビット値で返します。

メンバーデータ

struct CamacCardDescriptor* card
デバイスドライバが使用する構造体です。
KInt status
クレートコントローラの状態を示すデータです。
KInt slotSize
クレートの幅を示すデータです。
KInt numberOfModule
現在クレートにささっているモジュールの数を示すデータです。
KonoeCAMACModule** modules
各CAMACモジュールへのポインタです。

定数

MAX_SLOT
ステーション番号の最大値でその値は24です。
ITEM_WIDTH
標準出力の際、マニピュレータが使用します。その値は16です。
VALUE_WIDTH
標準出力の際、マニピュレータが使用します。その値は10です。

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