4 #ifndef EVD_RAWDATADRAWER_H
5 #define EVD_RAWDATADRAWER_H
7 namespace fhicl {
class ParameterSet; }
17 namespace art {
class Event; }
22 class DetectorPropertiesData;
31 class PlaneDataChangeTracker_t;
37 class RawDigitCacheDataClass;
39 typedef ::util::PlaneDataChangeTracker_t
CacheID_t;
73 bool bZoomToRoI =
false);
75 void FillQHisto(
const art::Event& evt,
unsigned int plane, TH1F* histo);
77 void FillTQHisto(
const art::Event& evt,
unsigned int plane,
unsigned int wire, TH1F* histo);
91 void ExtractRange(TVirtualPad* pPad, std::vector<double>
const* zoom =
nullptr);
94 void SetDrawingLimits(
float low_wire,
float high_wire,
float low_tdc,
float high_tdc);
105 void GetChargeSum(
int plane,
double& charge,
double& convcharge);
114 unsigned int width = 0;
115 unsigned int height = 0;
121 return (width != 0) && (height != 0);
125 operator bool()
const {
return isFilled(); }
130 class OperationBaseClass;
131 class ManyOperations;
151 void Reset(art::Event
const& event);
179 void DrawRawDigit2D(art::Event
const& evt, evdb::View2D* view,
unsigned int plane);
200 std::vector<BoxInfo_t>
const& BoxInfo);
int GetRegionOfInterest(int plane, int &minw, int &maxw, int &mint, int &maxt)
void FillTQHisto(const art::Event &evt, unsigned int plane, unsigned int wire, TH1F *histo)
void RunDrawOperation(art::Event const &evt, detinfo::DetectorPropertiesData const &detProp, evdb::View2D *view, unsigned int plane)
void DrawRawDigit2D(art::Event const &evt, evdb::View2D *view, unsigned int plane)
Performs the 2D wire plane drawing.
void SetDrawingLimitsFromRoI(geo::PlaneID::PlaneID_t plane)
double fStartTick
low tick
unsigned int PlaneID_t
Type for the ID number.
The data type to uniquely identify a Plane.
details::CacheID_t * fCacheID
information about the last processed plane
bool isFilled() const
Returns whether the stored value is valid.
void RawDigit2D(art::Event const &evt, detinfo::DetectorPropertiesData const &detProp, evdb::View2D *view, unsigned int plane, bool bZoomToRoI=false)
Draws raw digit content in 2D wire plane representation.
bool ProcessChannelWithStatus(lariov::ChannelStatusProvider::Status_t channel_status) const
Returns whether a channel with the specified status should be processed.
std::vector< double > fRawCharge
Sum of Raw Charge.
BEGIN_PROLOG channel_status
std::vector< int > fWireMin
lowest wire in interesting region for each plane
void SetDrawingLimits(float low_wire, float high_wire, float low_tdc, float high_tdc)
Fills the viewport borders from the specified extremes.
std::vector< int > fTimeMax
highest time in interesting region for each plane
unsigned short Status_t
type representing channel status
double fTicks
number of ticks of the clock
PadResolution_t PadResolution
stored pad resolution
Cached set of RawDigitInfo_t.
void FillQHisto(const art::Event &evt, unsigned int plane, TH1F *histo)
void GetChargeSum(int plane, double &charge, double &convcharge)
void RunRoIextractor(art::Event const &evt, unsigned int plane)
std::vector< int > fWireMax
highest wire in interesting region for each plane
void SetDrawingLimitsFromRoI(geo::PlaneID const pid)
void GetRawDigits(art::Event const &evt)
Reads raw::RawDigits; also triggers Reset()
double TotalClockTicks() const
PlaneID_t Plane
Index of the plane within its TPC.
Definition of data types for geometry description.
Detects the presence of a new event, data product or wire plane.
void Reset(art::Event const &event)
Prepares for a new event (if somebody tells it to)
bool hasRegionOfInterest(geo::PlaneID::PlaneID_t plane) const
void QueueDrawingBoxes(evdb::View2D *view, geo::PlaneID const &pid, std::vector< BoxInfo_t > const &BoxInfo)
Aid in the rendering of RawData objects.
Interface for experiment-specific channel quality info provider.
static std::vector< raw::RawDigit > const EmptyRawDigits
Empty collection, used in return value of invalid digits.
void ResetRegionOfInterest()
Forgets about the current region of interest.
details::CellGridClass * fDrawingRange
information about the viewport
std::vector< int > fTimeMin
lowest time in interesting region for each plane
::util::PlaneDataChangeTracker_t CacheID_t
Manages a grid-like division of 2D space.
evd::details::RawDigitCacheDataClass * digit_cache
Cache of raw digits.
bool RunOperation(art::Event const &evt, OperationBaseClass *operation)
std::vector< double > fConvertedCharge
Sum of Charge Converted using Birks' formula.
void ExtractRange(TVirtualPad *pPad, std::vector< double > const *zoom=nullptr)
Fills the viewport information from the specified pad.