All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
RawDrawingOptions.h
Go to the documentation of this file.
1 ////////////////////////////////////////////////////////////////////////
2 //
3 // Display parameters for the raw data
4 //
5 // \author brebel@fnal.gov
6 ////////////////////////////////////////////////////////////////////////
7 #ifndef RAWDRAWINGOPTIONS_H
8 #define RAWDRAWINGOPTIONS_H
9 #ifndef __CINT__
10 #include <string>
11 #include <vector>
12 
14 
15 #include "nuevdb/EventDisplayBase/Reconfigurable.h"
16 
17 namespace art {
18  class ActivityRegistry;
19 }
20 #include "art/Framework/Services/Registry/ServiceDeclarationMacros.h"
21 #include "canvas/Utilities/InputTag.h"
22 #include "fhiclcpp/ParameterSet.h"
23 
24 namespace evd {
25  /**
26  * @brief Display parameters for the raw data
27  *
28  * Configuration parameters
29  * -------------------------
30  *
31  * This is an incomplete list of the supported parameters:
32  * - *RoIthresholds* (list of real numbers, default: empty): threshold in ADC
33  * counts for a tick on a wire to be "interesting", thus extending the
34  * region of interest to include it. The thresholds are specified one per
35  * plane; if no threshold is specified for a plane, the threshold for the
36  * last plane is used instead (therefore specifying just one threshold will
37  * apply the same threshold to all planes). If no threshold is specified
38  * at all, the value of 'MinSignal' parameter is used as threshold for all
39  * planes
40  *
41  */
42  class RawDrawingOptions : public evdb::Reconfigurable
43  {
44  public:
45  explicit RawDrawingOptions(fhicl::ParameterSet const& pset);
46 
47  void reconfigure(fhicl::ParameterSet const& pset) override;
48 
49  int fDrawRawDataOrCalibWires; ///< 0 for raw
50  int fTicksPerPoint; ///< number of ticks to include in one point
51  int fScaleDigitsByCharge; ///< scale the size of the digit by the charge
52  double fMinSignal; ///< minimum ADC count to display a time bin
53  double fStartTick; ///< Starting tick for the display
54  double fTicks; ///< number of TDC ticks to display, ie # fTicks past fStartTick
55  int fAxisOrientation; ///< 0 = TDC values on y-axis, wire number on x-axis, 1 = swapped
56  unsigned int fTPC; ///< TPC number to draw, typically set by TWQProjectionView
57  unsigned int fCryostat; ///< Cryostat number to draw, typically set by TWQProjectionView
58  unsigned int fMinChannelStatus; ///< Display channels with this status and above
59  unsigned int fMaxChannelStatus; ///< Display channels with this status and below
60  std::vector<art::InputTag> fRawDataLabels; ///< module label that made the raw digits, default is daq
61 
62  bool fUncompressWithPed; ///< Option to uncompress with pedestal. Turned off by default
63  bool fSeeBadChannels; ///< Allow "bad" channels to be viewed
64 
65  std::vector<float> fRoIthresholds; ///< region of interest thresholds, per plane
66 
67  int fPedestalOption; ///< 0: use DetPedestalService; 1: Use pedestal in raw::RawDigt; 2: no ped subtraction
68 
69  fhicl::ParameterSet fRawDigitDrawerParams; ///< FHICL parameters for the RawDigit waveform display
70 
71  /// Returns the current TPC as a TPCID
73 
74  /// Returns the region of interest threshold for the specified wire plane
75  double RoIthreshold(geo::PlaneID const& planeID) const
76  { return RoIthreshold(planeID.Plane); }
77 
78  /// Returns the region of interest threshold for the specified wire plane
80  {
81  return (plane < fRoIthresholds.size())?
82  fRoIthresholds[plane]: fRoIthresholds.back();
83  } // RoIthreshold(plane number)
84 
85  };
86 }//namespace
87 #endif // __CINT__
88 DECLARE_ART_SERVICE(evd::RawDrawingOptions, LEGACY)
89 #endif
int fScaleDigitsByCharge
scale the size of the digit by the charge
unsigned int fTPC
TPC number to draw, typically set by TWQProjectionView.
void reconfigure(fhicl::ParameterSet const &pset) override
Display parameters for the raw data.
int fDrawRawDataOrCalibWires
0 for raw
std::vector< float > fRoIthresholds
region of interest thresholds, per plane
unsigned int PlaneID_t
Type for the ID number.
Definition: geo_types.h:473
The data type to uniquely identify a Plane.
Definition: geo_types.h:472
fhicl::ParameterSet fRawDigitDrawerParams
FHICL parameters for the RawDigit waveform display.
double RoIthreshold(geo::PlaneID const &planeID) const
Returns the region of interest threshold for the specified wire plane.
unsigned int fCryostat
Cryostat number to draw, typically set by TWQProjectionView.
unsigned int fMaxChannelStatus
Display channels with this status and below.
double fMinSignal
minimum ADC count to display a time bin
double fTicks
number of TDC ticks to display, ie # fTicks past fStartTick
geo::TPCID CurrentTPC() const
Returns the current TPC as a TPCID.
The data type to uniquely identify a TPC.
Definition: geo_types.h:386
PlaneID_t Plane
Index of the plane within its TPC.
Definition: geo_types.h:493
Definition of data types for geometry description.
int fTicksPerPoint
number of ticks to include in one point
bool fSeeBadChannels
Allow &quot;bad&quot; channels to be viewed.
unsigned int fMinChannelStatus
Display channels with this status and above.
int fAxisOrientation
0 = TDC values on y-axis, wire number on x-axis, 1 = swapped
std::vector< art::InputTag > fRawDataLabels
module label that made the raw digits, default is daq
double fStartTick
Starting tick for the display.
IDparameter< geo::TPCID > TPCID
Member type of validated geo::TPCID parameter.
double RoIthreshold(geo::PlaneID::PlaneID_t plane) const
Returns the region of interest threshold for the specified wire plane.
int fPedestalOption
0: use DetPedestalService; 1: Use pedestal in raw::RawDigt; 2: no ped subtraction ...
RawDrawingOptions(fhicl::ParameterSet const &pset)
bool fUncompressWithPed
Option to uncompress with pedestal. Turned off by default.