CFEL - ASG Software Suite  2.5.0
CASS
above_noise_finder.h
Go to the documentation of this file.
1 // Copyright (C) 2011 Lutz Foucar
2 
3 /**
4  * @file above_noise_finder.h contains hll like finder for pixels
5  *
6  * @author Lutz Foucar
7  */
8 
9 #ifndef _ABOVENOISEFINDER_H_
10 #define _ABOVENOISEFINDER_H_
11 
12 #include "pixel_finder_base.h"
13 #include "common_data.h"
14 
15 namespace cass
16 {
17 namespace pixeldetector
18 {
19 /** will find pixels by comparing them to a "noise" map
20  *
21  * This HLL like finding of pixels will compare the pixel values to a "noise"
22  * Map (see cass::pixeldetector::CommonData::noiseMap).
23  *
24  * @note the multiplication should be done here since if we do it on the global
25  * noise map it will be the same for all detectors @todo is this right?
26  *
27  * @cassttng PixelDetectors/\%name\%/AboveNoiseFinder/{Multiplier}\n
28  * Value multiplied to the noise value before comparing whether the
29  * pixel is above the noise. Default is 4.
30  *
31  * @author Lutz Foucar
32  */
34 {
35 public:
36  /** constructor */
38 
39  /** find the pixels
40  *
41  * take the input frame and search it for pixels which are put into the
42  * list of pixels.
43  *
44  * Will go through the whole frame and compare each pixel whether its value
45  * is bigger than _multiplier * noise taken from the noiseMap. If this is
46  * the case it will be added to the list of pixels.
47  *
48  * @return reference to the coalesced pixel list
49  * @param frame the frame containing the pixels of interest
50  * @param pixels the list of pixels that should be found
51  */
52  pixels_t& operator() (const Frame &frame, pixels_t &pixels);
53 
54  /** load the settings of this
55  *
56  * @param s the CASSSettings object to read the information from
57  */
58  void loadSettings(CASSSettings &s);
59 
60 private:
61  /** the global data container for the detector */
63 
64  /** how many times the value of the pixel needs to be higher than the standart deviation */
65  float _multiplier;
66 };
67 }//end namespace pixeldetector
68 }//end namespace cass
69 
70 #endif
Settings for CASS.
Definition: cass_settings.h:30
void loadSettings(CASSSettings &s)
load the settings of this
will find pixels by comparing them to a "noise" map
std::vector< Pixel > pixels_t
the list of pixels
contains base class for all pixel finders.
std::tr1::shared_ptr< CommonData > shared_pointer
typedef a shared pointer of this
Definition: common_data.h:140
A Frame of an advance Pixel Detector.
contains the common data for one advanced pixeldetector
base class for pixel finders
pixels_t & operator()(const Frame &frame, pixels_t &pixels)
find the pixels
float _multiplier
how many times the value of the pixel needs to be higher than the standart deviation ...
CommonData::shared_pointer _commondata
the global data container for the detector