RawDataDrawer.h
Go to the documentation of this file.
1 /// \file RawDataDrawer.h
2 /// \brief Class to aid in the rendering of RawData objects
3 /// \author messier@indiana.edu
4 /// \version $Id: RawDataDrawer.h,v 1.2 2010/11/10 22:38:34 p-novaart Exp $
5 #ifndef EVD_RAWDATADRAWER_H
6 #define EVD_RAWDATADRAWER_H
7 
8 #include <vector>
9 #ifndef __CINT__
10 
11 #endif
12 
13 #include "TH1F.h"
14 
15 class TVirtualPad;
16 namespace art { class Event; }
17 namespace evdb { class View3D; }
18 
19 namespace gar {
20 
21  namespace raw { class RawDigit; }
22  namespace raw { class CaloRawDigit; }
23 
24  namespace evd {
25 
26  /// Aid in the rendering of RawData objects
27  class RawDataDrawer {
28  public:
29 
30  RawDataDrawer();
31  ~RawDataDrawer();
32 
33  /**
34  * @brief Draws raw digit content in 2D wire plane representation
35  * @param evt source for raw digits
36  * @param view target rendered object
37  * @param plane number of the plane to be drawn
38  * @param bZoomToRoI whether to render only te region of interest
39  *
40  * This function performs pre-rendering of the raw digit content into a
41  * 3D view of the yzt space
42  * The material for rendering is created and sent to view object for actual
43  * rendering.
44  *
45  */
46  void RawDigit3D(art::Event const& evt,
47  evdb::View3D* view);
48 
49  private:
50 
51  // Fill a histogram with the charge as a function of time
52  void FillQHisto(gar::raw::RawDigit const& dig,
53  TH1F* histo);
54 
55  /// Performs the 3D drawing
56  void DrawRawDigit3D (art::Event const& evt,
57  evdb::View3D* view);
58 
59  /**
60  * @brief Makes sure raw::RawDigit's are available for the current settings
61  *
62  */
63  void GetRawDigits(art::Event const& evt,
64  std::vector<const raw::RawDigit*> & digits);
65 
66  TH1F* fEventTQHist; ///< Charge vs time for all digits in an event
67  TH1F* fDigitTQHist; ///< Charge vs time for a single channel in an event
68 
69  }; // class RawDataDrawer
70 
71 }
72 }
73 
74 #endif
75 ////////////////////////////////////////////////////////////////////////
Raw data description.
TH1F * fDigitTQHist
Charge vs time for a single channel in an event.
Definition: RawDataDrawer.h:67
LArSoft includes.
Definition: InfoTransfer.h:33
TH1F * fEventTQHist
Charge vs time for all digits in an event.
Definition: RawDataDrawer.h:66
General GArSoft Utilities.
Definition: types.h:32
TCEvent evt
Definition: DataStructs.cxx:7
Collection of charge vs time digitized from a single readout channel.
Definition: RawDigit.h:67
Aid in the rendering of RawData objects.
Definition: RawDataDrawer.h:27