SctData.ModuleDefect Class Reference

This class represents a possible defect with a module. More...

Collaboration diagram for SctData.ModuleDefect:

Collaboration graph
[legend]
List of all members.

Other Defects

} {

 ModuleDefect (ModuleDefect prototype, ModuleElement element)
 Public constructor: Copy the given ModuleDefect and give ModuleElement.
boolean isSevere ()
 Return true if this ModuleDefect is severe.
ModuleElement getModuleElement ()
 Gets the module element affected by this defect.
boolean isPrototype ()
 True if this is a prototype, false if it actually represents a defect.
boolean isUnfittable ()
 returns true if defect is serious enough to prevent fitting to this channel.
boolean isUnuseable ()
 SCTDAQ definitition of unusable is dead or stuckon.
boolean isDodgy ()
 SCTDAQ definitition of `dodgy' is any defect other than dead or stuckon.
String getName ()
 Gets the name of this defect.
String getDescription ()
 Get a human readable description for this ModuleDefect.
double getParameter ()
 Gets a parameter that can be used to determine if something is defective.
boolean isSameTypeAs (ModuleDefect defect)
 Comparison operators Returns true if the defect types are the same.
boolean equals (Object o)
 Returns true if the defect types are the same.
String getClassName ()
void write (OStream s, ObjectManager o) throws java.io.IOException
static ModuleDefect read (IStream s, ObjectManager o) throws java.io.IOException
 For I/O use.
static ModuleDefect NO_HI = new ModuleDefect(19, true, "NO_HI", "High noise occupancy", 0.0005)
static ModuleDefect MEAN_ERROR = new ModuleDefect(16, true, "MEAN_ERROR", "Error in the mean", 0)
 high noise occupancy
static ModuleDefect SIG_ERROR = new ModuleDefect(17, true, "SIG_ERROR", "Error in the sigma", 0)
static ModuleDefect STUCK_CELL = new ModuleDefect(21, false, "STUCK_CELL","Stuck cell in the pipeline",0.)
 pipeline
static ModuleDefect DEAD_CELL = new ModuleDefect(20, false, "DEAD_CELL","Dead cell in the pipeline",0.)
 pipeline
 ModuleDefect (int id, boolean severe, String name, String d, double parameter)
 Private constructor.
int id
boolean severe
String name
String description
double parameter
ModuleElement element

Static Public Attributes

static ModuleDefect DEAD = new ModuleDefect(1, true, "DEAD", "Dead channel - output always <1%", 0.01)
 Output always v small.
static ModuleDefect STUCKON = new ModuleDefect(2, true, "STUCKON", "Dead channel - output always > 98% occupancy", 0.98)
 Output always v high.
static ModuleDefect OVER = new ModuleDefect(4, false, "OVER", "Occupancy greater than 100%", 1.)
 Occupancy larger than max.
static ModuleDefect UNDER = new ModuleDefect(3, true, "UNDER", "Occupancy never reaches 100%", 1.)
 Occupancy never reaches mas.
static ModuleDefect NOINIT = new ModuleDefect(18, true, "NOINIT", "Couldn't initialize fit", 0)
 Couldn't initialize the fit.
static ModuleDefect FIT_UNDER = new ModuleDefect(5, true, "FIT_UNDER", "Fitted mean out of bounds low", 0)
static ModuleDefect FIT_OVER = new ModuleDefect(6, true, "FIT_OVER", "Fitted mean out of bounds high", 0)
static ModuleDefect SIG_UNDER = new ModuleDefect(7, true, "SIG_UNDER", "Fitted sigma out of bounds low", 0)
static ModuleDefect SIG_OVER = new ModuleDefect(8, true, "SIG_OVER", "Fitted sigma out of bounds high", 0)
NPt Gain Defects
{

static ModuleDefect LO_GAIN = new ModuleDefect(9, true, "LO_GAIN", "Gain is less than 0.75*chip average", 0.75)
 Gain < 0.75 * chip average.
static ModuleDefect HI_GAIN = new ModuleDefect(10, true, "HI_GAIN", "Gain is higher than 1.25*chip average", 1.25)
 Gain > 1.25 * chip average.
static ModuleDefect LO_OFFSET = new ModuleDefect(11, true, "LO_OFFSET", "Offset is less than -100", -100)
 Offset < -100.
static ModuleDefect HI_OFFSET = new ModuleDefect(12, true, "HI_OFFSET", "Offset is higher than 12-", 120)
 Offset > 120.
static ModuleDefect UNBONDED = new ModuleDefect(13, true, "UNBONDED", "Noise is less than 750", 750)
 Noise <= 750.
static ModuleDefect PARTBONDED = new ModuleDefect(14, false, "PARTBONDED", "Noise is less than 1100", 1100)
 Noise <= 1100.
static ModuleDefect NOISY = new ModuleDefect(15, true, "NOISY", "Noise is > 1.15*chip average", 1.15)
 Noise > 1.15* av chip noise.
Trim Defects
} {

static ModuleDefect TR_RANGE = new ModuleDefect(22, false, "TR_RANGE","Unusual chip trim step size",0.)
 Unexpected chip trim step size.
static ModuleDefect TR_STEP = new ModuleDefect(23, false, "TR_STEP","Channel trim step size different from chip",4.)
 Channel step different from chip.
static ModuleDefect TR_OFFSET = new ModuleDefect(24, false, "TR_OFFSET","Channel trim range offset different from chip",4.)
 Channel offset different from chip.
static ModuleDefect TR_NOTRIM = new ModuleDefect(25, true, "TR_NOTRIM","Untrimmable channel",0.)
 Untrimmable channel.

Static Private Attributes

static HashMap defectMap = new HashMap(20)

Detailed Description

This class represents a possible defect with a module.

A ModuleDefect has a description and can be classified as severe or not severe.

Todo:
Is this enough? Do we need to add more classes here? Should we be able to add other ModuleDefect s anywhere in our code or is having a central repository here enough? Should this class be renamed ChannelDefect?
Author:
Matthew Palmer

Definition at line 14 of file ModuleDefect.java.


Member Function Documentation

boolean SctData.ModuleDefect.equals Object  o  ) 
 

Returns true if the defect types are the same.

Returns false if either is a prototype.

Note:
defects need NOT refer to the same (physical) channels.

Definition at line 121 of file ModuleDefect.java.

References SctData.ModuleDefect.element, SctData.ModuleElement.equals(), SctData.ModuleDefect.id, and SctData.ModuleDefect.isPrototype().

Here is the call graph for this function:

boolean SctData.ModuleDefect.isPrototype  ) 
 

True if this is a prototype, false if it actually represents a defect.

Todo:
is this necessary?

Definition at line 73 of file ModuleDefect.java.

References SctData.ModuleDefect.element.

Referenced by SctData.ModuleDefect.equals().

boolean SctData.ModuleDefect.isSameTypeAs ModuleDefect  defect  ) 
 

Comparison operators Returns true if the defect types are the same.

AND defects refer to the same channels.

Definition at line 112 of file ModuleDefect.java.

References SctData.ModuleDefect.id.

Referenced by SctData.ModuleDefect.isDodgy(), SctData.ModuleDefect.isUnfittable(), and SctData.ModuleDefect.isUnuseable().


The documentation for this class was generated from the following file:
Generated on Mon Feb 6 14:17:02 2006 for SCT DAQ/DCS Software - Java by  doxygen 1.4.6