The xMux register class is used for controlling the inspection line
registers on VXI cards.
It is assumed that the VME access width to the hardware register is 16 bits.
The class works in two ways dependent on the detector type.
The class accepts and returns via the WRITE and READ operations inspection lines as text strings for the
detector types Ge, BGO, Clover, Trigger and NAM. The class will set both the channel and signal
required which is via a single hardware register.
The class accepts and returns via the WRITE and READ operations the inspection line channel for the detector types Cluster, TriggerMK2, Icare, Saphir and FVI. The class will set only the channel required in the hardware.
This is the mode of operation used by all new VXI modules which have separate hardware registers for the
inspection line channel and signal.
The signal is selected by using the xDig class to write to the appropiate register.
Attributes :-
-s    VXI slot number
specifies the slot number (1-12) within the VXI crate. Manditory - no default value.
-c    channel number
specifies the hardware channel within the VXI card. Optional. By default -c 0 is assumed.
Normally channel 0 is used for the configuration and common registers positioned at the base of the
card address space and channels 1 => n are used for the channel specific registers.
-o    offset
specifies the address offset of the hardware register relative to the base of the VXI card. Manditory - no default value.
-l    length of bit field
specifies the length of the data field for this register in bits.
The attribute value -l 0 implies that the data field for this object is the same as the hardware
access width. Optional. By default -l 0 is assumed.
-b    bit position
specifies the position of the least significant bit of the data within the hardware register.
The hardware is addressed with the least significant bit having the value 0.
This attribute will normally always be used in conjunction with the -l attribute to define
the length and position of a software object which is a subfield of the hardware register.
Optional. By default -b 0 is assumed.
-m    inspection line
specifies the inspection line to be controlled. The value supplied must be one of a1 (analogue 1); a2 (analogue 2);
d1 (digital 1); d2 (digital 2) and v (voltage).
-d    detector
specifies the detector type. This is used in order to interpret inspection line names. The currently supported
detector types are Ge, BGO, Clover, Cluster, Saphir, FVI, Trig, TriggerMK2, Icare and NAM.
The WRITE operation will release any existing use of the inspection line (by writing 0 to the channel register
on the VXI card previously using the inspection line) before writing to the channel register of the new user to
connect it to the inspection line. This is essential to prevent damage to the hardware.
The INITIALISE operation will just perform the disconnect operation.