Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Related Pages  

CCaenIO Class Reference

#include <CaenIO.h>

Inheritance diagram for CCaenIO:

CVmeModule List of all members.

Public Methods

 CCaenIO (UInt_t base, UInt_t length=0xff)
 CCaenIO (CVME< UShort_t > &am_CVME)
 CCaenIO (const CCaenIO &aCCaenIO)
virtual ~CCaenIO ()
CCaenIO & operator= (const CCaenIO &aCCaenIO)
Int_t operator== (const CCaenIO &aCCaenIO) const
UShort_t ReadInput (UInt_t input)
void PulseOutput (UInt_t output)
void SetLevel (UInt_t output)
void ClearLevel (UInt_t output)
void SetAllNIM ()
void ClearAllNIM ()
void ClearAll ()
void SetECL (UShort_t value)
void SetEcl ()
void ClearECL ()

Private Attributes

UInt_t m_nOutputMask

Detailed Description

\file CaenIO.h

Encapsulates a CAEN mod. v262 multipurpose i/o register card. Caen262's are mapped using a CVME<UShort_t> object. The module operates in the a24d16 vme space at base address 0x4444. The card consists of 4 NIM level inputs, 4 NIM level outputs, 4 140ns NIM pulsed outputs, and 16 ECL levels. The read/write functions receive the input/output value to read from or write to, and those pararmeters must be between 0 and 3 for the NIM inputs/outputs. The ECL outputs are set by simply placing a bit pattern in its register.

Author: Jason Venema NSCL Michigan State University East Lansing, MI 48824-1321 mailto: venemaja@msu.edu

Definition at line 306 of file CaenIO.h.


Constructor & Destructor Documentation

CCaenIO::CCaenIO UInt_t    base,
UInt_t    length = 0xff
 

each bit in the mask corresponds to a level output. A 1 indicates the output is set.

Definition at line 312 of file CaenIO.cpp.

CCaenIO::CCaenIO CVME< UShort_t > &    am_CVME
 

Definition at line 328 of file CaenIO.cpp.

CCaenIO::CCaenIO const CCaenIO &    aCCaenIO
 

Definition at line 344 of file CaenIO.cpp.

References m_nOutputMask.

virtual CCaenIO::~CCaenIO   [inline, virtual]
 

Definition at line 321 of file CaenIO.h.


Member Function Documentation

void CCaenIO::ClearAll  
 

Purpose: Set all NIM levels and ECL outputs to logical 0

Definition at line 505 of file CaenIO.cpp.

References CVmeModule::pokew().

void CCaenIO::ClearAllNIM  
 

Clear all NIM levels to false.

Definition at line 522 of file CaenIO.cpp.

References CVmeModule::pokew().

Referenced by CVMEStatusModule::ModuleClear().

void CCaenIO::ClearECL  
 

Purpose: Set all ECL outputs to logical 0

Definition at line 493 of file CaenIO.cpp.

References CVmeModule::pokew().

void CCaenIO::ClearLevel UInt_t    output
 

Purpose: Clear one of the level outputs. If the output is already cleared, then this function is a no-op.

Parameters:
UInt_t  output - the output to deassert

Definition at line 465 of file CaenIO.cpp.

References m_nOutputMask, and CVmeModule::pokew().

CCaenIO & CCaenIO::operator= const CCaenIO &    aCCaenIO
 

Definition at line 359 of file CaenIO.cpp.

References m_nOutputMask, and CVmeModule::operator=().

Int_t CCaenIO::operator== const CCaenIO &    aCCaenIO const
 

Definition at line 380 of file CaenIO.cpp.

References m_nOutputMask, and CVmeModule::operator==().

void CCaenIO::PulseOutput UInt_t    output
 

Purpose: Pulse one of the pulse outputs.

Parameters:
UInt_t  output - the output to pulse

Definition at line 424 of file CaenIO.cpp.

References CVmeModule::pokew().

Referenced by CVMEStatusModule::GoBusy(), and CVMEStatusModule::GoClear().

UShort_t CCaenIO::ReadInput UInt_t    input
 

Purpose: Reads the value on the inputs of one of the NIM level inputs. Which inputs it reads is specified by its parameter. Inputs must be between 1 and 4.

Parameters:
UInt_t  input - the input (1-4) from which to read a value.
Returns:
The value of the input.

Definition at line 400 of file CaenIO.cpp.

References CVmeModule::peekw().

Referenced by CVMETrigger::operator()().

void CCaenIO::SetAllNIM  
 

Set all NIM levels true.

Definition at line 514 of file CaenIO.cpp.

References CVmeModule::pokew().

Referenced by CVMEStatusModule::ModuleClear().

void CCaenIO::SetEcl  
 

void CCaenIO::SetECL UShort_t    value
 

Definition at line 481 of file CaenIO.cpp.

References CVmeModule::pokew().

void CCaenIO::SetLevel UInt_t    output
 

Purpose: Set one of the level outputs. If the outputs is already set, then this function is a no-op.

Parameters:
UInt_t  output - the output to assert.

Definition at line 444 of file CaenIO.cpp.

References m_nOutputMask, and CVmeModule::pokew().


Member Data Documentation

UInt_t CCaenIO::m_nOutputMask [private]
 

Definition at line 308 of file CaenIO.h.

Referenced by CCaenIO(), ClearLevel(), operator=(), operator==(), and SetLevel().


The documentation for this class was generated from the following files:
Generated on Fri Nov 8 13:37:10 2002 for Event Readout system. by doxygen1.2.16