| 
    GET library
    
   | 
 
#include <GETActarTpcAnalyser.hh>
  
 Public Member Functions | |
Constructors, affectation, destructor  | |
| GETActarTpcAnalyser (GETActarTpc *get=NULL) | |
| virtual | ~GETActarTpcAnalyser () | 
General functions  | |
| virtual void | Reset () | 
| virtual int | SetSystem (GETSystem *gptr) | 
Main analysis functions, called by GETSystem  | |
| virtual void | ClearAnalysis () | 
| virtual void | ClearEvent () | 
| virtual int | AnalyseRawEvent () | 
| virtual int | AnalyseCorEvent () | 
Predefined analysis configuration files  | |
| virtual bool | ConfigCommand (const GString &code, const GString &args="", FILE *fptr=NULL) | 
Pads signal automatic histograms  | |
| virtual double | ComputeSumInt (bool mask=true) | 
| virtual double | ComputeSumMax (bool mask=true) | 
| TH2D * | CreateXYtimeHisto (const string &name="GET_XY_Time") | 
| TH2D * | CreateXYhitsHisto (const string &name="GET_XY_Hits") | 
| TH2D * | CreateXYamplitudeHisto (const string &name="GET_XY_Amplitude") | 
| TH2D * | CreateXTamplitudeHisto (const string &name="GET_XT_Amplitude") | 
| TH2D * | CreateYTamplitudeHisto (const string &name="GET_YT_Amplitude") | 
| TH3D * | CreateXYTHisto (const string &name="GET_XYT", int nt=512, double t0=0., double t1=512.) | 
| TH1D * | CreateXprojectionHisto (const string &name="GET_X_Projection") | 
| TH1D * | CreateYprojectionHisto (const string &name="GET_Y_Projection") | 
| TH1D * | CreateTprojectionHisto (const string &name="GET_T_Projection") | 
| TH2D * | GetXYhitsHisto () const | 
| TH2D * | GetXYtimeHisto () const | 
| TH2D * | GetXYamplitudeHisto () const | 
| TH2D * | GetXTamplitudeHisto () const | 
| TH2D * | GetYTamplitudeHisto () const | 
| TH3D * | GetXYTHisto () const | 
| TH1D * | GetXprojectionHisto () const | 
| TH1D * | GetYprojectionHisto () const | 
| TH1D * | GetTprojectionHisto () const | 
Noise analysis (redefined from GETSystemAnalyser)  | |
| virtual void | SetNoiseRange (u_int i0=2, u_int i1=509) | 
| TH2D * | GetChannelsNoiseHistoXY () const | 
| virtual int | ProcessNoiseAnalysis () | 
Off-track signal analysis  | |
| virtual void | SetOffTrackCorrection (int spc=1) | 
| virtual void | InitOffTrackAnalysis (int spc=1) | 
| bool | IsOffTrackAnalysisON () const | 
| bool | IsOffTrackCorrectionON () const | 
| virtual const GETHitMaskXY & | GetOffTrackMask () const | 
| virtual GETHitMaskXY & | GetOffTrackMask () | 
| TH1D * | CreateInTrackMeanHisto (const string &hname="MeanInTrackSignal") | 
| TH1D * | CreateOffTrackMeanHisto (const string &hname="MeanOffTrackSignal") | 
| TH2D * | CreateInTrackPatternHisto (const string &hname="PatternInTrack") | 
| TH2D * | CreateOffTrackPatternHisto (const string &hname="PatternOffTrack") | 
| virtual int | ProcessOffTrackAnalysis () | 
| virtual int | ApplyOffTrackCorrection () | 
| virtual int | GetOffTrackPadsCount () const | 
| GETSample & | GetInTrackMeanSample () | 
| GETSample & | GetOffTrackMeanSample () | 
| TH1D * | GetInTrackMeanHisto () | 
| TH1D * | GetOffTrackMeanHisto () | 
| TH2D * | GetInTrackPatternHisto () | 
| TH2D * | GetOffTrackPatternHisto () | 
Pads signal histograms general functions  | |
| TH2D * | CreatePadHistogram (const string &name) | 
| TH3D * | CreateHistogram3D (const string &name, int nt, double t0, double t1) | 
| TH2D * | CreateHistogramXT (const string &name, int nt, double t0, double t1) | 
| TH2D * | CreateHistogramYT (const string &name, int nt, double t0, double t1) | 
| TH2D * | CreateHistogramXT (const string &name) | 
| TH2D * | CreateHistogramYT (const string &name) | 
| TH1D * | CreateHistogramX (const string &name) | 
| TH1D * | CreateHistogramY (const string &name) | 
| TH1D * | CreateHistogramT (const string &name) | 
| int | FillPadHistogram (TH2 *hptr, u_short mode=GET::dataMaxSignal) | 
| int | FillHistogram3D (TH3 *hptr, double toffset=0., u_short mode=0) | 
| int | FillHistogramXTmax (TH2 *hptr, double toffset=0., u_short mode=0) | 
| int | FillHistogramYTmax (TH2 *hptr, double toffset=0., u_short mode=0) | 
| virtual int | FillAutoHistograms () | 
| int | Export3D_POV (const string &fname, u_short mode=0) | 
| int | ExportPads_POV (const string &fname, u_short mode=0) | 
| int | Export3D_POV (FILE *fptr, u_short mode=0) | 
| int | ExportPads_POV (FILE *fptr, u_short mode=0) | 
ROOT related functions  | |
| ClassDef (GETActarTpcAnalyser, 0) | |
  Public Member Functions inherited from GETSystemAnalyser | |
| GETSystemAnalyser (GETSystem *get=NULL) | |
| virtual | ~GETSystemAnalyser () | 
| u_int | GetChannelNumber () const | 
| void | SetEventsSkip (u_int n) | 
| u_int | GetEventsSkip () | 
| u_int | GetAnalysisEventsCounter () | 
| void | SetSelectedData (u_short id) | 
| int | GetSelectedData () const | 
| virtual int | AnalyseRunStart () | 
| virtual int | AnalyseRunStop () | 
| virtual void | BadChannelsWarning () | 
| virtual double | GetMaximumSignal () const | 
| virtual u_int | GetMaximumChannel () const | 
| virtual int | ReadConfigFile (const string &cfg) | 
| virtual int | ReadConfigFile (FILE *fp) | 
| TH2D * | CreateFullEventRawHisto (const string &hname) | 
| TH2D * | CreateFullEventCorHisto (const string &hname) | 
| TH2D * | GetFullEventRawHisto () const | 
| TH2D * | GetFullEventCorHisto () const | 
| void | SetAmplitudeMode (u_short mode, double win=0.) | 
| void | SetAmplitudeWindow (double win) | 
| void | SetTimingMode (u_short mode) | 
| void | SetTimingModeCFD (double frac, double delay) | 
| virtual int | CalcChannelOutput (u_int ic, double &vmax, double &tmax) | 
| virtual int | CalcChannelMaxima (u_int ic) | 
| void | SetMaximaScaling (double fact) | 
| void | InitAmplitudeData () | 
| void | InitMaximaData () | 
| void | ResetMaximaData () | 
| void | ClearAmplitudeData () | 
| bool | IsAmplitudeDataComputed () const | 
| bool | IsMaximaDataComputed () const | 
| virtual void | ComputeAmplitudeData () | 
| TH1D * | CreateChannelsMaxRawHisto (const string &hname) | 
| TH1D * | CreateChannelsMaxCorHisto (const string &hname) | 
| TH1D * | GetChannelsMaxRawHisto () const | 
| TH1D * | GetChannelsMaxCorHisto () const | 
| virtual void | InitDataNumberCheck (u_int n0, u_int n1) | 
| bool | IsDataNumberCheckON () const | 
| virtual int | ProcessDataNumberCheck () | 
| virtual int | GetDataNumberBadCount () const | 
| virtual void | InitDataContinuityCheck (double dmax) | 
| bool | IsDataContinuityCheckON () const | 
| virtual bool | ContinuityCheck (GETSample &sample) | 
| virtual int | ProcessDataContinuityCheck () | 
| virtual int | GetDataContinuityBadCount () const | 
| u_int | GetNoiseIndexMin () const | 
| u_int | GetNoiseIndexMax () const | 
| TH1D * | GetChannelsNoiseHisto () const | 
| bool | IsNoiseAnalysisON () const | 
| virtual int | FillCumulNoiseHisto (TH2 *hptr) | 
| virtual void | InitResolutionAnalysis (int n, double amin, double amax) | 
| virtual void | ClearResolutionAnalysis () | 
| bool | IsResolutionAnalysisON () const | 
| TH2I * | GetResolutionMaxHisto () const | 
| TH1D * | GetResolutionHisto () const | 
| virtual int | ProcessResolutionAnalysis () | 
| virtual void | InitBaseFluctuations (u_int i0=2, u_int i1=32, double warn=0.) | 
| virtual void | ClearBaseFluctuations () | 
| TH1D * | GetBaseFluctuationsHisto () const | 
| bool | IsFluctuationsAnalysisON () const | 
| virtual int | ProcessFluctuationsAnalysis () | 
| virtual int | GetFluctuationsBadCount () const | 
| virtual int | FillCumulFluctuationsHisto (TH2 *hptr) | 
| TH1D * | CreateChannelsHisto1D (const string &name, const string &ytit="", bool fpn=true) | 
| TH2D * | CreateChannelsHisto2D (const string &name, int ny, double ymin, double ymax, const string &ytit="", bool fpn=true) | 
| TH1I * | CreateChannelsHisto1I (const string &name, const string &ytit="", bool fpn=true) | 
| TH2I * | CreateChannelsHisto2I (const string &name, int ny, double ymin, double ymax, const string &ytit="", bool fpn=true) | 
| TH2D * | CreateFullEventHisto (const string &name, bool fpn=true) | 
| TH2D * | CreateFullEventHisto (const string &name, int ny, double ymin, double ymax, bool fpn=true) | 
| int | FillFullEventHisto (TH2D *hptr, bool reset=true, bool fpn=true, double scale=1.) | 
| TH1D * | CreateChannelSummaryHisto (const string &name, bool fpn=true) | 
| int | FillChannelsSummaryHisto (TH1D *hptr, u_short mode=GET::dataMaxSignal, bool fpn=true, bool reset=true) | 
| int | CumulChannelsSummaryHisto (TH2 *hptr, u_short mode=GET::dataMaxSignal, bool fpn=true) | 
| TH1D ** | CreateAllChannelsHisto (const string &prefix="GET_", const string &suffix="") | 
| int | FillAllChannelsHisto (TH1D **htab, bool reset=true) | 
| ClassDef (GETSystemAnalyser, 0) | |
Protected Attributes | |
| GETActarTpc * | actar_ptr | 
| Pointer to the GETActarTpc object (which is the GETSystem pointer of the base classe)  | |
| TH2D * | h_mask_in | 
| Pad histogram with track pattern.  | |
| TH2D * | h_mask_off | 
| Pad histogram with off-track pattern.  | |
| TH1D * | h_mean_in_track | 
| Histogram with summed signals of track pads.  | |
| TH1D * | h_mean_off_track | 
| Histogram with summed signals of off-track pads.  | |
| TH1D * | h_t_proj | 
| Histogram with pads event amplitude.  | |
| TH1D * | h_x_proj | 
| Histogram with pads event amplitude.  | |
| TH2D * | h_xt_ampl | 
| Histogram with pads event amplitude.  | |
| TH2D * | h_xy_ampl | 
| Histogram with pads event amplitude.  | |
| TH2D * | h_xy_hits | 
| Histogram with pads hits.  | |
| TH2D * | h_xy_rms | 
| Pointer to the pads RMS histogram.  | |
| TH2D * | h_xy_time | 
| Histogram with pads event time.  | |
| TH3D * | h_xyt | 
| Histogram with 2D signal with third T dimension.  | |
| TH1D * | h_y_proj | 
| Histogram with pads event amplitude.  | |
| TH2D * | h_yt_ampl | 
| Histogram with pads event amplitude.  | |
| GETHitMaskXY | off_mask | 
| Mask for X-Y off-track analysis.  | |
| int | off_space | 
| Pads separation between track and off-track pads.  | |
| bool | off_track_cor | 
| Whether to apply off-track correction to channels output signal.  | |
| bool | off_track_on | 
| Whether off-track analysis is ON.  | |
| GETHitMaskXY * | pad_mask | 
| Pointer to the hit mask (same as base class hit mask, but known as GETHitMaskXY)  | |
| GETSample | sum_in_track | 
| Sample with the sum of hit pads.  | |
| GETSample | sum_off_track | 
| Sample with the sum of pads out of track.  | |
  Protected Attributes inherited from GETSystemAnalyser | |
| double * | amax_amplitude | 
| Array of maximum amplitude values.  | |
| bool | amax_computed | 
| Whether the maximum amplitude / time is computed.  | |
| double * | amax_time | 
| Array of maximum amplitude times.  | |
| u_short | amplitude_mode | 
| Signal amplitude analysis mode.  | |
| double | amplitude_window | 
| Signal amplitude analysis window size (for fit or average)  | |
| u_int | ch_max_index | 
| Channel with maximum amplitude.  | |
| double | ch_max_signal | 
| Maximum channel amplitude value.  | |
| bool * | channel_bad | 
| Whether the channel contains bad data.  | |
| bool | channel_bad_flag | 
| Whether there are bad channels.  | |
| int | data_cont_bad | 
| Number of bad channels in analysis of the data continuity.  | |
| double | data_cont_max | 
| Maximum variation for continuity.  | |
| bool | data_cont_on | 
| Whether the analysis of data discontinuity is ON.  | |
| int | data_num_bad | 
| Number of bad channels in analysis of the data per channel.  | |
| int | data_num_max | 
| Upper value for bad range of data / channel.  | |
| int | data_num_min | 
| Lower value for bad range of data / channel.  | |
| bool | data_num_on | 
| Whether the analysis of number of data per channel is ON.  | |
| u_int | events_count | 
| Number of events since analysis cleard.  | |
| u_int | events_skip | 
| Number of first events to skip for analysis.  | |
| int | fluct_bad | 
| Number of bad channels in fluctuations analysis.  | |
| int * | fluct_cnt | 
| Number of events for baseline check.  | |
| u_int | fluct_imax | 
| Upper limit for baseline fluctuations analysis.  | |
| u_int | fluct_imin | 
| Lower limit for baseline fluctuations analysis.  | |
| bool | fluct_on | 
| Whether baseline fluctuations analysis is ON.  | |
| double * | fluct_sum | 
| Cumulated values for baseline check.  | |
| double | fluct_warn | 
| Baseline fluctuation value to issue a warning.  | |
| GETSystem * | get_ptr | 
| Pointer to the GET system object.  | |
| TH1I * | h_channels_data_num | 
| Pointer to the channels summary histogram with number of raw data per channel.  | |
| TH1D * | h_channels_fluct | 
| Pointer to the channels baseline fluctuations analysis summary average histogram.  | |
| TH1D * | h_channels_max_cor | 
| Pointer to the channels summary histogram with maximum corrected output values.  | |
| TH1D * | h_channels_max_raw | 
| Pointer to the channels summary histogram with maximum raw output values.  | |
| TH1D * | h_channels_rms | 
| Pointer to the channels RMS analysis summary histogram.  | |
| TH2D * | h_full_event_cor | 
| Pointer to the histogram with full data after corrections (if any)  | |
| TH2D * | h_full_event_raw | 
| Pointer to the histogram with full raw data (before processing)  | |
| TH2I * | h_resol_ampl | 
| Pointer to the channels versus amplitude maximum histogram.  | |
| TH1D * | h_resol_rms | 
| Pointer to the channels amplitude variations histogram.  | |
| GETHitMask * | hit_mask | 
| Pointer to the hit mask (same as base class hit mask, but known as GETHitMaskXY)  | |
| double ** | mmax_amplitude | 
| Maxima values arrays for each channel.  | |
| bool | mmax_analysis | 
| Whether multiple maxima analysis is requested.  | |
| bool | mmax_computed | 
| Whether multiple maxima analysis is performed.  | |
| RExtremaFinder | mmax_finder | 
| Multiple maxima analyser.  | |
| u_int | mmax_max | 
| Maximum number of maxima per channel.  | |
| u_int * | mmax_num | 
| Number of maxima for each channel.  | |
| double | mmax_scale | 
| Scaling factor for amplitude.  | |
| double ** | mmax_time | 
| Maxima times arrays for each channel.  | |
| int | resol_dim | 
| Dimension of amplitude axis.  | |
| double | resol_max | 
| Upper limit of amplitude axis.  | |
| double | resol_min | 
| Lower limit of amplitude axis.  | |
| bool | resol_on | 
| Whether amplitude resolution analysis is ON.  | |
| double | resol_step | 
| Lower limit of amplitude axis.  | |
| u_int | rms_imax | 
| Upper limit for RMS analysis.  | |
| u_int | rms_imin | 
| Lower limit for RMS analysis.  | |
| bool | rms_on | 
| Whether noise analysis is ON.  | |
| u_short | selected_data | 
| Information on the channel data to analyse: GET::signalOut (default), GET::signalTst or GET::signalRec.  | |
| double | timing_cfd_delay | 
| CFD offset for timing analysis.  | |
| double | timing_cfd_fraction | 
| CFD fraction for timing analysis.  | |
| u_short | timing_mode | 
| Signal timing analysis mode.  | |
Private Member Functions | |
| GObject (GETActarTpcAnalyser) | |
This class is a specialized analyser class (derived from GETSystemAnalyser) for GETActarTpc (derived from GETSystem).
The analysis available in addition to the ones of the base class are:
The off-track signal analysis and correction has been developped in order to evaluate the mesh-induced signal on pads that are not supposed to collect charges, but that see a mirror signal from the charges on the mesh.
A copy of the pads mask is created to define pads around the real track. The signal from these pads in averaged to build the off-track signal, that is removed from all signal channels if the correction is set on (the off-track analysis can be set, without correction channels output).
The picture above shows a track from an event of the ACTAR TPC demonstrator. The top-left figure is the signal amplitude on the pads, that is used to determine the hit mask (in-track pads of bottom-left) picture and the pads that are used to compute off-track signal (off-track pads). The off track signal (bottom-right picture) can be compared to the average effective signal, by inversion and scaling (up-right picture).
| GETActarTpcAnalyser::GETActarTpcAnalyser | ( | GETActarTpc * | get = NULL | ) | 
Constructor. If the GETActarTpc object is not defined, a call to SetSystem function must be performed before the analyser can be used.
| get | pointer to the GET system | 
References actar_ptr, h_mask_in, h_mask_off, h_mean_in_track, h_mean_off_track, h_t_proj, h_x_proj, h_xt_ampl, h_xy_ampl, h_xy_hits, h_xy_rms, h_xy_time, h_xyt, h_y_proj, h_yt_ampl, off_space, off_track_cor, off_track_on, and pad_mask.
      
  | 
  virtual | 
Destructor. The histograms associated to the analysis are deleted.
References Reset().
      
  | 
  virtual | 
Function called when the GETActarTpc has read an event, after applying corrections to the output samples.
Reimplemented from GETSystemAnalyser.
References GETSystemAnalyser::amax_computed, ApplyOffTrackCorrection(), GETSystemAnalyser::ComputeAmplitudeData(), GETSystemAnalyser::events_count, GETSystemAnalyser::events_skip, FillAutoHistograms(), GETSystemAnalyser::hit_mask, GETHitMask::IsMaskSet(), off_track_cor, off_track_on, ProcessNoiseAnalysis(), ProcessOffTrackAnalysis(), GETSystemAnalyser::ProcessResolutionAnalysis(), GETSystemAnalyser::resol_on, GETSystemAnalyser::rms_on, and GETHitMask::UpdateMask().
      
  | 
  virtual | 
Function called when the GETActarTpc has read an event, before applying corrections to the output samples.
Reimplemented from GETSystemAnalyser.
References GETSystemAnalyser::AnalyseRawEvent().
      
  | 
  virtual | 
Apply the off-track analysis correction to channels outputs. For each (valid) pad, the average off-track signal is subtracted from the output signal.
References actar_ptr, GETLookupTable::GetChannel(), GETSystem::GetChannel(), GETSystem::GetHitMask(), GETLookupTable::GetNpadX(), GETLookupTable::GetNpadY(), GETHitMaskXY::IsValid(), GETSystem::LookupTable(), GETChannel::OutSample(), and sum_off_track.
Referenced by AnalyseCorEvent().
| GETActarTpcAnalyser::ClassDef | ( | GETActarTpcAnalyser | , | 
| 0 | |||
| ) | 
for use within ROOT.
      
  | 
  virtual | 
Function that clears all current analysis results: histograms, baseline fluctuations,...
Reimplemented from GETSystemAnalyser.
References GETSystemAnalyser::ClearAnalysis().
Referenced by GETActarEventReader::Reset().
      
  | 
  virtual | 
Function called by the GET system ClearEvent function, to reset event related data (histograms, ...).
Reimplemented from GETSystemAnalyser.
References GETSystemAnalyser::ClearEvent(), h_mask_in, h_mask_off, h_mean_in_track, h_mean_off_track, h_t_proj, h_x_proj, h_xt_ampl, h_xy_ampl, h_xy_hits, h_xy_time, h_xyt, h_y_proj, h_yt_ampl, sum_in_track, and sum_off_track.
      
  | 
  virtual | 
Compute the sum of signal (channel integral) for all channels (output, reconstructed or test sample, according to selected data).
| mask | whether the hit mask should be used to select summed channels | 
References GETSystemAnalyser::get_ptr, GETSystem::GetChannel(), GETLookupTable::GetPad(), GETObject::GetTotalChannelCount(), GETHitMaskXY::IsValidHit(), GETSystem::LookupTable(), GETChannel::OutSample(), pad_mask, GETChannel::RecSample(), GETSystemAnalyser::selected_data, GET::signalRec, GET::signalTst, and GETChannel::TstSample().
      
  | 
  virtual | 
Compute the sum of channels signal maximum value for all pads (output, reconstructed or test sample, according to selected data).
| mask | whether the hit mask should be used to select summed channels | 
References GETSystemAnalyser::amax_amplitude, GETSystemAnalyser::amplitude_mode, GETSystemAnalyser::ComputeAmplitudeData(), GETSystemAnalyser::get_ptr, GETLookupTable::GetPad(), GETObject::GetTotalChannelCount(), GETSystemAnalyser::IsAmplitudeDataComputed(), GETHitMaskXY::IsValidHit(), GETSystem::LookupTable(), and pad_mask.
Referenced by GETActarEventReader::AnalysisEvent().
      
  | 
  virtual | 
Function that sets a configuration parameter from a command line.
The valid command line in the class are:
| code | parameter(s) identifier | 
| args | additional arguments | 
| fptr | file pointer (in case more information should be read) | 
Reimplemented from GETSystemAnalyser.
References GETSystemAnalyser::ConfigCommand(), InitOffTrackAnalysis(), GETChannel::IsSignalChannel(), pad_mask, SetOffTrackCorrection(), and GETHitMaskXY::SetValid().
Referenced by GETActarEventReader::ConfigCommand().
| TH3D * GETActarTpcAnalyser::CreateHistogram3D | ( | const string & | name, | 
| int | nt, | ||
| double | t0, | ||
| double | t1 | ||
| ) | 
Create a 3D histogram with demonstrator pad plane size for X & Y and time for the 3rd dimension.
| name | histogram name | 
| nt | number of bins in Z (time) dimension | 
| t0 | lower time limit | 
| t1 | upper time limit | 
References actar_ptr, GETLookupTable::GetNpadX(), GETLookupTable::GetNpadY(), and GETSystem::LookupTable().
Referenced by CreateXYTHisto().
| TH1D * GETActarTpcAnalyser::CreateHistogramT | ( | const string & | name | ) | 
Create a T projection histogram with demonstrator pad plane size.
| name | histogram name | 
References actar_ptr, GETObject::GetSampleDim(), and GETObject::GetTimeStep().
Referenced by CreateTprojectionHisto().
| TH1D * GETActarTpcAnalyser::CreateHistogramX | ( | const string & | name | ) | 
Create a X projection histogram with demonstrator pad plane size.
| name | histogram name | 
References actar_ptr, GETLookupTable::GetNpadX(), and GETSystem::LookupTable().
Referenced by CreateXprojectionHisto().
| TH2D * GETActarTpcAnalyser::CreateHistogramXT | ( | const string & | name, | 
| int | nt, | ||
| double | t0, | ||
| double | t1 | ||
| ) | 
Create a 2D histogram with demonstrator pad plane size for X and time for the Y dimension.
| name | histogram name | 
| nt | number of bins in Z (time) dimension | 
| t0 | lower time limit | 
| t1 | upper time limit | 
References actar_ptr, GETLookupTable::GetNpadX(), and GETSystem::LookupTable().
Referenced by CreateHistogramXT(), and CreateXTamplitudeHisto().
| TH2D * GETActarTpcAnalyser::CreateHistogramXT | ( | const string & | name | ) | 
Create a 2D histogram with demonstrator pad plane size for X and time for the Y dimension.
| name | histogram name | 
References actar_ptr, CreateHistogramXT(), GETObject::GetSampleDim(), and GETObject::GetTimeStep().
| TH1D * GETActarTpcAnalyser::CreateHistogramY | ( | const string & | name | ) | 
Create a Y projection histogram with demonstrator pad plane size.
| name | histogram name | 
References actar_ptr, GETLookupTable::GetNpadY(), and GETSystem::LookupTable().
Referenced by CreateYprojectionHisto().
| TH2D * GETActarTpcAnalyser::CreateHistogramYT | ( | const string & | name, | 
| int | nt, | ||
| double | t0, | ||
| double | t1 | ||
| ) | 
Create a 2D histogram with demonstrator pad plane size for X and time for the Y dimension.
| name | histogram name | 
| nt | number of bins in Z (time) dimension | 
| t0 | lower time limit | 
| t1 | upper time limit | 
References actar_ptr, GETLookupTable::GetNpadY(), and GETSystem::LookupTable().
Referenced by CreateHistogramYT(), and CreateYTamplitudeHisto().
| TH2D * GETActarTpcAnalyser::CreateHistogramYT | ( | const string & | name | ) | 
Create a 2D histogram with demonstrator pad plane size for X and time for the Y dimension.
| name | histogram name | 
References actar_ptr, CreateHistogramYT(), GETObject::GetSampleDim(), and GETObject::GetTimeStep().
| TH1D * GETActarTpcAnalyser::CreateInTrackMeanHisto | ( | const string & | hname = "MeanInTrackSignal" | ) | 
Create the histogram automatically filled by the off-track analysis with the average of IN-track pads signal. param name of the histogram
References GETSystemAnalyser::get_ptr, GETSystem::GetChannel(), h_mean_in_track, off_track_on, and GETChannel::OutSample().
| TH2D * GETActarTpcAnalyser::CreateInTrackPatternHisto | ( | const string & | hname = "PatternInTrack" | ) | 
Create the histogram automatically filled by the off-track analysis with the IN-track valid hit pads pattern. param name of the histogram
References CreatePadHistogram(), h_mask_in, and off_track_on.
| TH1D * GETActarTpcAnalyser::CreateOffTrackMeanHisto | ( | const string & | hname = "MeanOffTrackSignal" | ) | 
Create the histogram automatically filled by the off-track analysis with the average of OFF-track pads signal. param name of the histogram
References GETSystemAnalyser::get_ptr, GETSystem::GetChannel(), h_mean_off_track, off_track_on, and GETChannel::OutSample().
| TH2D * GETActarTpcAnalyser::CreateOffTrackPatternHisto | ( | const string & | hname = "PatternOffTrack" | ) | 
Create the histogram automatically filled by the off-track analysis with the OFF-track valid hit pads pattern. param name of the histogram
References CreatePadHistogram(), h_mask_off, and off_track_on.
| TH2D * GETActarTpcAnalyser::CreatePadHistogram | ( | const string & | name | ) | 
Create a 2D histogram with demonstrator pad plane size.
| name | histogram name | 
References actar_ptr, GETLookupTable::GetNpadX(), GETLookupTable::GetNpadY(), and GETSystem::LookupTable().
Referenced by CreateInTrackPatternHisto(), CreateOffTrackPatternHisto(), CreateXYamplitudeHisto(), CreateXYhitsHisto(), CreateXYtimeHisto(), and SetNoiseRange().
      
  | 
  inline | 
Function that creates the histograms for T projection of signal amplitude.
| name | name of the created automatic histogram | 
References CreateHistogramT(), and h_t_proj.
Referenced by GETActarEventReader::PresetAnalysis().
      
  | 
  inline | 
Function that creates the histograms for X projection of signal amplitude.
| name | name of the created automatic histogram | 
References CreateHistogramX(), and h_x_proj.
Referenced by GETActarEventReader::PresetAnalysis().
      
  | 
  inline | 
Function that creates the histograms for (X-T) projection of signal amplitude.
| name | name of the created automatic histogram | 
References actar_ptr, CreateHistogramXT(), GETObject::GetSampleDim(), GETObject::GetTimeStep(), and h_xt_ampl.
Referenced by GETActarEventReader::PresetAnalysis().
      
  | 
  inline | 
Function that creates the histograms for (X-Y) projection of signal amplitude.
| name | name of the created automatic histogram | 
References CreatePadHistogram(), and h_xy_ampl.
Referenced by GETActarEventReader::PresetAnalysis().
      
  | 
  inline | 
Function that creates the histograms for pad hit pattern.
| name | name of the created automatic histogram | 
References CreatePadHistogram(), and h_xy_hits.
Referenced by GETActarEventReader::PresetAnalysis().
      
  | 
  inline | 
Function that creates the histograms for pad hit pattern.
| name | name of the created automatic histogram | 
| nt | number of bins in Z (time) dimension | 
| t0 | lower time limit | 
| t1 | upper time limit | 
References CreateHistogram3D(), and h_xyt.
Referenced by GETActarEventReader::PresetAnalysis().
      
  | 
  inline | 
Function that creates the histograms for pad pattern of signal time.
| name | name of the created automatic histogram | 
References CreatePadHistogram(), and h_xy_time.
Referenced by GETActarEventReader::PresetAnalysis().
      
  | 
  inline | 
Function that creates the histograms for Y projection of signal amplitude.
| name | name of the created automatic histogram | 
References CreateHistogramY(), and h_y_proj.
Referenced by GETActarEventReader::PresetAnalysis().
      
  | 
  inline | 
Function that creates the histograms for (Y-T) projection of signal amplitude.
| name | name of the created automatic histogram | 
References actar_ptr, CreateHistogramYT(), GETObject::GetSampleDim(), GETObject::GetTimeStep(), and h_yt_ampl.
Referenced by GETActarEventReader::PresetAnalysis().
| int GETActarTpcAnalyser::Export3D_POV | ( | const string & | fname, | 
| u_short | mode = 0  | 
        ||
| ) | 
Export the 3D data to a text file for use as an input file in Persistence Of Vision.
| fname | output file name | 
| mode | data selected for filling (see GETActarTpcAnalyser::FillHistogram3D function) | 
| int GETActarTpcAnalyser::Export3D_POV | ( | FILE * | fptr, | 
| u_short | mode = 0  | 
        ||
| ) | 
Export the 3D data to a text file for use as an input file in Persistence Of Vision.
| fptr | output file pointer | 
| mode | data selected for filling (see GETActarTpcAnalyser::FillHistogram3D function) | 
References actar_ptr, GETSystemAnalyser::amax_amplitude, GETSystemAnalyser::amax_time, GETSystemAnalyser::ComputeAmplitudeData(), GET::dataFullSignal, GET::dataIntegral, GETSystem::GetChannel(), GETLookupTable::GetIpx(), GETLookupTable::GetIpy(), GETLookupTable::GetNpadX(), GETLookupTable::GetNpadY(), GETLookupTable::GetPad(), GETObject::GetSampleDim(), GETHitMask::GetThreshold(), GETObject::GetTimeStep(), GETObject::GetTotalChannelCount(), GETSystemAnalyser::hit_mask, GETSystemAnalyser::IsAmplitudeDataComputed(), GETHitMask::IsMaskDefined(), GETHitMask::IsMaskSet(), GETHitMaskXY::IsValidHit(), GETSystem::LookupTable(), GETSystemAnalyser::mmax_amplitude, GETSystemAnalyser::mmax_computed, GETSystemAnalyser::mmax_num, GETSystemAnalyser::mmax_time, GETChannel::OutSample(), pad_mask, GETChannel::RecSample(), GETSystemAnalyser::selected_data, GET::signalRec, GET::signalTst, GETChannel::TstSample(), and GETHitMaskXY::UpdateMask().
| int GETActarTpcAnalyser::ExportPads_POV | ( | const string & | fname, | 
| u_short | mode = 0  | 
        ||
| ) | 
Export the XY projection data to a text file for use as an input file in Persistence Of Vision.
| fname | output file name | 
| mode | data selected for filling (see GETActarTpcAnalyser::FillPadHistogram function) | 
| int GETActarTpcAnalyser::ExportPads_POV | ( | FILE * | fptr, | 
| u_short | mode = 0  | 
        ||
| ) | 
Export the XY projection data to a text file for use as an input file in Persistence Of Vision.
| fptr | output file pointer | 
| mode | data selected for filling (see GETActarTpcAnalyser::FillPadHistogram function) | 
References actar_ptr, GETSystemAnalyser::amax_amplitude, GETSystemAnalyser::amax_time, GETSystemAnalyser::ComputeAmplitudeData(), GET::dataHit, GET::dataIntegral, GET::dataTime, GETSystem::GetChannel(), GETLookupTable::GetIpx(), GETLookupTable::GetIpy(), GETLookupTable::GetNpadX(), GETLookupTable::GetNpadY(), GETLookupTable::GetPad(), GETObject::GetTotalChannelCount(), GETSystemAnalyser::IsAmplitudeDataComputed(), GETHitMask::IsMaskDefined(), GETHitMask::IsMaskSet(), GETHitMaskXY::IsValidHit(), GETSystem::LookupTable(), GETChannel::OutSample(), pad_mask, GETChannel::RecSample(), GETSystemAnalyser::selected_data, GET::signalRec, GET::signalTst, GETChannel::TstSample(), and GETHitMaskXY::UpdateMask().
      
  | 
  virtual | 
Function that fills, in a single loop, all the automatic histograms created for the analysis.
References actar_ptr, GETSystemAnalyser::amax_amplitude, GETSystemAnalyser::amax_time, GETSystemAnalyser::ComputeAmplitudeData(), GETSystem::GetChannel(), GETLookupTable::GetIpx(), GETLookupTable::GetIpy(), GETLookupTable::GetPad(), GETObject::GetSampleDim(), GETObject::GetTimeStep(), GETObject::GetTotalChannelCount(), GETSystemAnalyser::h_channels_max_cor, GETSystemAnalyser::h_full_event_cor, h_t_proj, h_x_proj, h_xt_ampl, h_xy_ampl, h_xy_time, h_xyt, h_y_proj, h_yt_ampl, GETSystemAnalyser::IsAmplitudeDataComputed(), GETHitMask::IsMaskSet(), GETHitMaskXY::IsValidHit(), GETSystem::LookupTable(), GETSystemAnalyser::mmax_amplitude, GETSystemAnalyser::mmax_computed, GETSystemAnalyser::mmax_num, GETSystemAnalyser::mmax_time, GETChannel::OutSample(), pad_mask, GETChannel::RecSample(), GETSystemAnalyser::selected_data, GET::signalRec, GET::signalTst, GETChannel::TstSample(), and GETHitMaskXY::UpdateMask().
Referenced by AnalyseCorEvent().
| int GETActarTpcAnalyser::FillHistogram3D | ( | TH3 * | hptr, | 
| double | toffset = 0.,  | 
        ||
| u_short | mode = 0  | 
        ||
| ) | 
Function filling a 3D histogram (i.e. from CreateHistogram3D function) with data from selected signal (input/output/reconstructed) of current event.
It is similar than the previous function, but it does not fill all the 3D space: only 1 time bin per pad, where the maximum of the signal is located.
The mode argument is used to select the information:
The function uses the look-up table for filling. The histogram is not resetted before filling.
| hptr | histogram pointer | 
| toffset | shift in time scale | 
| mode | filling mode: GET::dataMaxSignal (default), GET::dataIntegral, GET::dataTime, GET::dataTimeBin or GET::dataFullSignal | 
References actar_ptr, GETSystemAnalyser::amax_amplitude, GETSystemAnalyser::amax_time, GETSystemAnalyser::ComputeAmplitudeData(), GET::dataFullSignal, GET::dataIntegral, GET::dataTime, GET::dataTimeBin, GETSystem::GetChannel(), GETLookupTable::GetIpx(), GETLookupTable::GetIpy(), GETLookupTable::GetPad(), GETObject::GetSampleDim(), GETHitMask::GetThreshold(), GETObject::GetTimeStep(), GETObject::GetTotalChannelCount(), GETSystemAnalyser::hit_mask, GETSystemAnalyser::IsAmplitudeDataComputed(), GETHitMask::IsMaskDefined(), GETHitMask::IsMaskSet(), GETHitMaskXY::IsValidHit(), GETSystem::LookupTable(), GETSystemAnalyser::mmax_amplitude, GETSystemAnalyser::mmax_computed, GETSystemAnalyser::mmax_num, GETSystemAnalyser::mmax_time, GETChannel::OutSample(), pad_mask, GETChannel::RecSample(), GETSystemAnalyser::selected_data, GET::signalRec, GET::signalTst, GETChannel::TstSample(), and GETHitMaskXY::UpdateMask().
| int GETActarTpcAnalyser::FillHistogramXTmax | ( | TH2 * | hptr, | 
| double | toffset = 0.,  | 
        ||
| u_short | mode = 0  | 
        ||
| ) | 
Function filling a 2D histogram (i.e. from CreateHistogramXT function) with data from selected signal (input/output/reconstructed) of current event.
For each pad with signal above threshhold, the time corresponding to the maximum amplitude gives the 2nd dimension. The pad X position is the 1st dimension. The increment is the channel maximum value.
The function uses the look-up table for filling. The histogram is not resetted before filling.
| hptr | histogram pointer | 
| toffset | shift in time scale | 
| mode | time information: GET::dataTime (real time, default) or GET::dataTimeBin (time bin) for Z dimension | 
References actar_ptr, GETSystemAnalyser::amax_amplitude, GETSystemAnalyser::amax_time, GETSystemAnalyser::ComputeAmplitudeData(), GET::dataIntegral, GET::dataTime, GET::dataTimeBin, GETSystem::GetChannel(), GETLookupTable::GetIpx(), GETLookupTable::GetPad(), GETObject::GetTimeStep(), GETObject::GetTotalChannelCount(), GETSystemAnalyser::IsAmplitudeDataComputed(), GETHitMask::IsMaskDefined(), GETHitMask::IsMaskSet(), GETHitMaskXY::IsValidHit(), GETSystem::LookupTable(), GETSystemAnalyser::mmax_amplitude, GETSystemAnalyser::mmax_computed, GETSystemAnalyser::mmax_num, GETSystemAnalyser::mmax_time, GETChannel::OutSample(), pad_mask, GETChannel::RecSample(), GETSystemAnalyser::selected_data, GET::signalRec, GET::signalTst, GETChannel::TstSample(), and GETHitMaskXY::UpdateMask().
| int GETActarTpcAnalyser::FillHistogramYTmax | ( | TH2 * | hptr, | 
| double | toffset = 0.,  | 
        ||
| u_short | mode = 0  | 
        ||
| ) | 
Function filling a 2D histogram (i.e. from CreateHistogramYT function) with data from selected signal (input/output/reconstructed) of current event.
For each pad with signal above threshhold, the time corresponding to the maximum amplitude gives the 2nd dimension. The pad Y position is the 1st dimension. The increment is the channel maximum value.
The function uses the look-up table for filling. The histogram is not resetted before filling.
| hptr | histogram pointer | 
| toffset | shift in time scale | 
| mode | time information: GET::dataTime (real time, default) or GET::dataTimeBin (time bin) for Z dimension | 
References actar_ptr, GETSystemAnalyser::amax_amplitude, GETSystemAnalyser::amax_time, GETSystemAnalyser::ComputeAmplitudeData(), GET::dataIntegral, GET::dataTime, GET::dataTimeBin, GETSystem::GetChannel(), GETLookupTable::GetIpy(), GETLookupTable::GetPad(), GETObject::GetTimeStep(), GETObject::GetTotalChannelCount(), GETSystemAnalyser::IsAmplitudeDataComputed(), GETHitMask::IsMaskDefined(), GETHitMask::IsMaskSet(), GETHitMaskXY::IsValidHit(), GETSystem::LookupTable(), GETSystemAnalyser::mmax_amplitude, GETSystemAnalyser::mmax_computed, GETSystemAnalyser::mmax_num, GETSystemAnalyser::mmax_time, GETChannel::OutSample(), pad_mask, GETChannel::RecSample(), GETSystemAnalyser::selected_data, GET::signalRec, GET::signalTst, GETChannel::TstSample(), and GETHitMaskXY::UpdateMask().
| int GETActarTpcAnalyser::FillPadHistogram | ( | TH2 * | hptr, | 
| u_short | mode = GET::dataMaxSignal  | 
        ||
| ) | 
Function filling a 2D histogram (i.e. from CreatePadHistogram function) with data from selected signal (input/output/reconstructed) of current event.
One value per channel is incremented depending on mode argument. The function uses the look-up table for filling and the hit mask data for thresholds. The histogram is not resetted before filling.
| hptr | histogram pointer | 
| mode | data selected for filling: GET::dataMaxSignal (default), GET::dataIntegral, GET::dataTime, GET::dataHit | 
References actar_ptr, GETSystemAnalyser::amax_amplitude, GETSystemAnalyser::amax_time, GETSystemAnalyser::ComputeAmplitudeData(), GET::dataHit, GET::dataIntegral, GET::dataTime, GETSystem::GetChannel(), GETLookupTable::GetIpx(), GETLookupTable::GetIpy(), GETLookupTable::GetPad(), GETObject::GetTotalChannelCount(), GETSystemAnalyser::IsAmplitudeDataComputed(), GETHitMask::IsMaskDefined(), GETHitMask::IsMaskSet(), GETHitMaskXY::IsValidHit(), GETSystem::LookupTable(), GETChannel::OutSample(), pad_mask, GETChannel::RecSample(), GETSystemAnalyser::selected_data, GET::signalRec, GET::signalTst, GETChannel::TstSample(), and GETHitMaskXY::UpdateMask().
      
  | 
  inline | 
Return the pointer to the pads noise histogram of current event.
References h_xy_rms.
Referenced by GETActarEventReader::PresetAnalysis().
      
  | 
  inline | 
Return histogram of the average signal of in-track pads.
References h_mean_in_track.
      
  | 
  inline | 
Return the average signal sample of in-track pads.
References sum_in_track.
      
  | 
  inline | 
Return histogram of the in-track pads pattern.
References h_mask_in.
      
  | 
  inlinevirtual | 
Return off-track mask.
References off_mask.
      
  | 
  inlinevirtual | 
Return off-track mask.
References off_mask.
      
  | 
  inline | 
Return histogram of the average signal of off-track pads.
References h_mean_off_track.
      
  | 
  inline | 
Return the average signal sample of off-track pads.
References sum_off_track.
      
  | 
  inlinevirtual | 
Return the number of off-track pads.
References GETHitMask::GetNhitValid(), off_mask, and off_track_on.
      
  | 
  inline | 
Return histogram of the off-track pads pattern.
References h_mask_off.
      
  | 
  inline | 
Return the automatic histogram for T-projection of signal amplitude.
References h_t_proj.
      
  | 
  inline | 
Return the automatic histogram for X-projection of signal amplitude.
References h_x_proj.
      
  | 
  inline | 
Return the automatic histogram for (X-T) projection of signal amplitude.
References h_xt_ampl.
      
  | 
  inline | 
Return the automatic histogram for (X-Y) projection of signal amplitude.
References h_xy_ampl.
      
  | 
  inline | 
Return the automatic histogram for pad hit pattern.
References h_xy_hits.
      
  | 
  inline | 
Return the automatic histogram for pad hit pattern.
References h_xyt.
      
  | 
  inline | 
Return the automatic histogram for pad pattern of signal time.
References h_xy_time.
      
  | 
  inline | 
Return the automatic histogram for Y-projection of signal amplitude.
References h_y_proj.
      
  | 
  inline | 
Return the automatic histogram for (Y-T) projection of signal amplitude.
References h_yt_ampl.
      
  | 
  private | 
Macro from GCpp library that defines the following functions:
      
  | 
  virtual | 
Initialize the off-track analysis. The argument sets the number of unused pads around the track. If it is set to -1, the off-track analysis is turned off.
| spc | pad spacing between track aond off-track pads | 
References GETSystemAnalyser::get_ptr, off_space, and off_track_on.
Referenced by ConfigCommand(), and SetOffTrackCorrection().
      
  | 
  inline | 
Return true if the off-track analysis is set.
References off_track_on.
      
  | 
  inline | 
Return true if the off-track channels output corrections is set.
References off_track_cor.
      
  | 
  virtual | 
Overload of the GETSystemAnalyser::ProcessNoiseAnalysis function in order to fill the pads XY noise histogram.
Reimplemented from GETSystemAnalyser.
References GETSystemAnalyser::get_ptr, GETLookupTable::GetChannel(), GETLookupTable::GetNpadX(), GETLookupTable::GetNpadY(), GETSystemAnalyser::h_channels_rms, h_xy_rms, GETHitMaskXY::IsValid(), GETSystem::LookupTable(), pad_mask, and GETSystemAnalyser::ProcessNoiseAnalysis().
Referenced by AnalyseCorEvent().
      
  | 
  virtual | 
Perform the off-track signal analysis. The hit mask is copied, adjusted according to spacing between track and off-track pads, then inverted. The data from track and off-track pads are summed?
References actar_ptr, GETHitMaskXY::Fill2DMaskHisto(), GETLookupTable::GetChannel(), GETSystem::GetChannel(), GETSystem::GetHitMask(), GETLookupTable::GetNpadX(), GETLookupTable::GetNpadY(), GETActarTpc::GetSignalBoundaries(), h_mask_in, h_mask_off, h_mean_in_track, h_mean_off_track, GETHitMaskXY::IsValidHit(), GETSystem::LookupTable(), off_mask, off_space, GETChannel::OutSample(), sum_in_track, and sum_off_track.
Referenced by AnalyseCorEvent().
      
  | 
  virtual | 
Delete all analysis currently defined for the analyser.
Reimplemented from GETSystemAnalyser.
References h_mask_in, h_mask_off, h_mean_in_track, h_mean_off_track, h_t_proj, h_x_proj, h_xt_ampl, h_xy_ampl, h_xy_hits, h_xy_rms, h_xy_time, h_xyt, h_y_proj, h_yt_ampl, off_track_cor, off_track_on, and GETSystemAnalyser::Reset().
Referenced by SetSystem(), and ~GETActarTpcAnalyser().
      
  | 
  virtual | 
Overload of the GETSystemAnalyser::SetNoiseRange function in order to create the pads XY noise histogram.
| i0 | lower time bucket for the analysis range | 
| i1 | upper time bucket for the analysis range | 
Reimplemented from GETSystemAnalyser.
References CreatePadHistogram(), h_xy_rms, pad_mask, GETSystemAnalyser::rms_on, and GETSystemAnalyser::SetNoiseRange().
      
  | 
  virtual | 
Set ON the off-track correction of channels output signals (to correct for mesh-induced signal). It initializes the off-track analysis. The argument sets the number of unused pads around the track. If it is set to -1, the off-track analysis is turned off.
| spc | pad spacing between track aond off-track pads | 
References GETSystemAnalyser::get_ptr, InitOffTrackAnalysis(), off_track_cor, and off_track_on.
Referenced by ConfigCommand(), and GETActarEventReader::ReadRunConfig().
      
  | 
  virtual | 
Define the GET system from which the data will be analysed. Note that all previously defined information is resetted. The function returns 0 if no error occured.
| gptr | Pointer to the GET system | 
Reimplemented from GETSystemAnalyser.
References actar_ptr, GETSystem::GetHitMask(), GETSystemAnalyser::InitAmplitudeData(), pad_mask, Reset(), and GETSystemAnalyser::SetSystem().