GLAST/LAT > DAQ and FSW > FSW > Doxygen Index > EFC / V4-1-2
Constituent: igfc     Tag: mv2304
#include "EDS/FFS.h"
#include "EDS/EBF_tkr.h"
#include "TFC_trigger.h"
Include dependency graph for TFC_triggerForm.h:
This graph shows which files directly or indirectly include this file:
Defines | |
#define | TFC_TRIGGER_PRINT |
If defined, then the internal debugging macro TFC_TRIGGER_PRINTF is activated. | |
#define | TFC_TRIGGER_PRINTF(_args) |
Internal debugging macro, activated by defining TFC_TRIGGER_PRINT. | |
#define | OFFSET_EVEN 0 |
An additional offset (from the right) in a 32-bit word from where the set of even layers normally begin. | |
#define | OFFSET_ODD 7 |
An additional offset (from the right) in a 32-bit word from where the set of odd layers begin. | |
#define | TFC_TRG_REMAP_INIT(_trigger, _even, _odd, _e, _o) |
Remaps the specified even and odd layers from the trigger word to the canonical (LSB=Layer 0) order. | |
#define | TFC_TRG_REMAP(_trigger, _even, _odd, _e, _o) |
Remaps the specified even and odd layers from the trigger word to the canonical (LSB=Layer 0) order. | |
Functions | |
static __inline int | TFC__triggerRemap (int trigger) |
Remaps the trigger pattern word into the more conventional order. | |
static __inline int | TFC__trigger7of8Form (unsigned int x, unsigned int y, unsigned int xy012, unsigned int xy013, unsigned int xy023, unsigned int xy123) |
Forms the 7 / 8 coincidence pattern. | |
static __inline int | TFC__triggerForm (unsigned int x, unsigned int y) |
Looks for a 7/8 or 6/6 coincidence. If one is found returns the starting layer and number of layers in the coincidence. |
CVS $Id: TFC_triggerForm.h,v 1.2 2005/11/22 02:32:09 russell Exp $
|
An additional offset (from the right) in a 32-bit word from where the set of even layers normally begin. In order to properly form the coincidences, a buffer area between the bits representing the even and odd layers must be maintained. This defines the beginning of the set of bits representing the even layers. There is also an offset defined for the set of bits representing the odd bits. Only one of these is non-zero, but the code is written in such a way that the non-zero one can be either. |
|
An additional offset (from the right) in a 32-bit word from where the set of odd layers begin. In order to properly form the coincidences, a buffer area between the bits representing the even and odd layers must be maintained. This defines the beginning of the set of bits representing the idd layers. There is also an offset defined for the set of bits representing the even bits. Only one of these is non-zero, but the code is written in such a way that the non-zero one can be either. |
|
Value: _even |= ((((_trigger)>>(EBF_TKR_RIGHT_BIT_K_L ## _e + OFFSET_EVEN)) & 1) \ << (EBF_TKR_K_L ## _e)); \ _odd |= ((((_trigger)>>(EBF_TKR_RIGHT_BIT_K_L ## _o + OFFSET_ODD )) & 1) \ << (EBF_TKR_K_L ## _o))
|
|
Value: _even = ((((_trigger)>>(EBF_TKR_RIGHT_BIT_K_L ## _e + OFFSET_EVEN)) & 1) \ << (EBF_TKR_K_L ## _e)); \ _odd = ((((_trigger)>>(EBF_TKR_RIGHT_BIT_K_L ## _o + OFFSET_ODD )) & 1) \ << (EBF_TKR_K_L ## _o))
|
|
Forms the 7 / 8 coincidence pattern.
If the coincidence pattern is over only 4 layers, the minimum, then only one bit will be set. If the pattern is over 5 layers, then 2 consecutive bits will be set. The 7 of 8 coincidence is formed by and'd all the possible 3-fold coincidence between the x and y with the OR of the 'left-out' layer.
= xy012 & (x_or_y_3) | xy013 & (x_or_y_2) | xy023 & (x_or_y_1) | xy123 & (x_or_y_0) The notation xy012, for example, means the 6/6 coincidence of the X and Y of layers 0,1,2.
|
|
Looks for a 7/8 or 6/6 coincidence. If one is found returns the starting layer and number of layers in the coincidence.
|
|
Remaps the trigger pattern word into the more conventional order.
0123456789abcdef0123456789abcdef fedcba9876543210fedcba9876543210 -------------------------------- 13579bdfh 02468aceg
hgfdebca9876543210
|