GLAST / LAT > DAQ and FSW > FSW > Doxygen Index> EFC / dev > ggfc / rhel5-32


Interface   Data Structures   File List   Data Fields   Globals  

AFC_splash.c File Reference

Evaluates the splash veto. More...

#include <AFC_splashMapDef.h>
#include <AFC_splash.h>
#include <PBI/FFS.ih>

Defines

#define MOVE_BITS(_w, _from_bit, _width, _to_bit)   ((((_w) >> (_from_bit)) & ((1<<(_width)) - 1)) << (_to_bit))
 Moves a bit field from one spot to another.

Functions

static __inline int evaluate1 (int acd, const unsigned int masks[32][2], int which)
 Evaluates whether the veto is satified for an individual word.
int AFC_splash (const AFC_splashMap *map, int acd_x, int acd_y, int acd_z)
 Determines whether the ACD pattern of hits satisfies the ACD splash veto condition.


Detailed Description

Evaluates the splash veto.

Author:
JJRussell - russell@slac.stanford.edu
    CVS $Id

Define Documentation

#define MOVE_BITS ( _w,
_from_bit,
_width,
_to_bit   )     ((((_w) >> (_from_bit)) & ((1<<(_width)) - 1)) << (_to_bit))

Moves a bit field from one spot to another.

Returns:
The extracted, justified bit field
Parameters:
_w The word to extract the bit field from
_from_bit The right most bit position (LSB = bit 0)
_width The width of the bit field
_to_bit The new right most bit position
This macro is not guaranteed to move bit fields round the boundaries, ie, perform wrap-around moves.

Referenced by AFC_splash().


Function Documentation

int AFC_splash ( const AFC_splashMap map,
int  acd_x,
int  acd_y,
int  acd_z 
)

Determines whether the ACD pattern of hits satisfies the ACD splash veto condition.

Return values:
0,if the condition is not satisfied
1,if the condition is satisfied
Parameters:
map This map determines whether 2 tiles are considered 'near' or 'far' neighbors.
acd_x The ACD X face hits, expressed as a bit mask.
acd_y The ACD Y face hits, expressed as a bit mask.
acd_z The ACD Z (TOP) face hits, expressed as a bit mask.
The splash condition is satisfied if there is at least 1 pair of 'far' neighbors and at least 3 hits in the ACD tiles. The algorithm only considers the ACD TOP tiles and the upper two rows of the side tiles.

References evaluate1(), MOVE_BITS, _AFC_splashMap::msk_0, _AFC_splashMap::msk_1, and _AFC_splashMap::msk_64.

Referenced by evaluateAcd(), and gammaFilter().

static __inline int evaluate1 ( int  acd,
const unsigned int  masks[32][2],
int  which 
) [static]

Evaluates whether the veto is satified for an individual word.

Return values:
0,if splash veto not satisfied.
1,if splash veto satisfied.
Parameters:
acd The word to consider
masks The bit mask of tiles considered as 'far' neighbors
which Which mask to use.

Referenced by AFC_splash().


Generated on Wed Jan 16 13:14:48 2013 by  doxygen 1.5.8