KonoeCAMACInterruptRegister
クラス定義ファイル
KonoeCAMACInterruptRegister.hh
メンバー関数定義
KonoeCAMACInterruptRegister.cc
クラス概要
CAMACモジュールであるインタラプトレジスタを扱います。
継承関係
KonoeCAMAC16bitModule
を継承しま す。
公開メンバー関数
KonoeCAMACInterruptRegister( const
KonoeCAMACCrate
* crate, KInt aStationNumber, KInt aChannel )
コンストラクタです。
引数にはインタラプトレジスタモジュールが挿入される
KonoeCAMACCrate
型オブジェクトへ のポインタとステーション番号、インタラプトレジスタのチャンネル数を 与えます。
~KonoeCAMACInterruptRegister( )
デストラクタです。なにもしません。
void readPattern( )
LAMレジスタを読み込み、その後、LAMを無効にします。
例えば、1番、2番、3番のチャンネルにLAM信号が届いていれば、その値は 7
(10)
になります。
void read( )
LAMレジスタを読み込みます。
例えば、4番、6番、8番のチャンネルにLAM信号が届いていれば、その値は 168
(10)
になります。
void read( KInt subAddress )
指定したサブアドレスのLAMレジスタを読み込み、ビットが立っていれば1、 そうでなければ0を返します。
またマスクも適用されるので、
以下の例
において、
interruptRegister -> read( 1 );
interruptRegister -> read( 2 );
このような、コードを書いた場合、1では1、2では0が返ります。
void readMask( )
LAMマスクレジスタを読み込みます。
例えば、マスクの値が254
(10)
で、LAMレジスタの値が 7
(10)
だとすると、有効なLAMは
チャンネル
1
2
3
4
5
6
7
8
LAM
○
○
○
×
×
×
×
×
マスク
×
○
○
○
○
○
○
○
有効なLAM
○
×
×
×
×
×
×
×
となります。
ちょっと見慣れない形ですので注意してください。
void clearLAM( )
LAMレジスタをクリアします。
void clearMask( )
LAMマスクレジスタをクリアします。
void clearEnable( )
LAMレジスタをクリアし、LAMを有効にします。
void writeMask( KUShort aData )
LAMマスクを aData に設定します。
void disableLAM( )
LAMを無効にします。
void enableLAM( )
LAMを有効にします。
void testLAM( )
試験的に全チャンネルのLAMを立てます。つまりLAMレジスタの値は8チャン ネルモジュールであれば、255
(10)
になります。
void disableLAMoutput( )
カタログに載っていたCAMACファンクションなのですが、その動作はよくわ かっていません。
void enableLAMoutput( )
カタログに載っていたCAMACファンクションなのですが、その動作はよくわ かっていません。
KonoeDataSegment
* getDataSegment( KInt segmentTag )
オブジェクト生成時に引数に与えたチャンネル分のデータを
データセグメント
にして返します。
ビットが立っているチャンネルは1、それ以外は0になります。
また、マスクも適用されます。
KInt fillData(
KonoeDataElement
* anElement,
KonoeModuleSubaddress
* subAddress )
指定したサブアドレスのデータを
データエレメント
にして返します。
ビットが立っているチャンネルは1、それ以外は0になります。
また、マスクも適用されます。
void initialize( )
インタラプトレジスタに対し、初期化動作を行います。
具体的にはLAMレジスタとLAMマスクレジスタのクリアを行い、LAMを無効に します。
void clear( )
インタラプトレジスタに対し、クリア動作を行います。
具体的にはLAMレジスタのクリアを行い、LAMを無効にします。
void update( )
インタラプトレジスタを更新します。
clear( )
と同 じです。
$Id: KonoeCAMACInterruptRegister.html,v 1.8 2002/03/16 08:11:47 iwai Exp $
KONOEコラボレーション
konoe-req@konoe.kek.jp