GET library
GETActarTpc Class Reference

#include <GETActarTpc.hh>

Inheritance diagram for GETActarTpc:
GETSystem GETObject GETActarDem GETActarEventReader

Public Member Functions

Constructors, affectation, destructor
 GETActarTpc (u_int nx=0, u_int ny=0, u_int dim=0, double dt=0.01L)
 
virtual ~GETActarTpc ()
 
System setting
virtual int Init (u_int nx, u_int ny, u_int n, double dt)
 
virtual GETHitMaskSetHitMask (GETHitMaskXY *mask)
 
Experimental data readout
virtual int ExtractCoboFrame ()
 
Events information
virtual GETChannelGetMaxSignalChannel (int *ipx=NULL, int *ipy=NULL, int *ipt=NULL)
 
virtual int GetSignalBoundaries (int &ixmin, int &ixmax, int &iymin, int &iymax, int &itmin, int &itmax)
 
virtual int GetSignalBoundaries (double &xmin, double &xmax, double &ymin, double &ymax, double &tmin, double &tmax)
 
ROOT related functions
 ClassDef (GETActarTpc, 0)
 
- Public Member Functions inherited from GETSystem
 GETSystem (u_int n_cobo=1, u_int dim=0, double dt=0.01L)
 
virtual ~GETSystem ()
 
virtual int ResetConfig ()
 
virtual int InitConfig ()
 
const GETCfgSetupGetConfig () const
 
GETCfgSetupGetConfig ()
 
virtual int ReadXMLConfig (const string &fname)
 
virtual void Reset ()
 
virtual int Init (u_int n_cobo, u_int n, double dt)
 
virtual void ClearEvent ()
 
bool ChannelHasData (u_int ic) const
 
virtual string GetObjectId () const
 
virtual u_int GetChildrenNumber () const
 
virtual const GETObjectGetChild (u_int i) const
 
virtual GETObjectGetChild (u_int i)
 
const GETCoBooperator[] (u_int n) const
 
GETCoBooperator[] (u_int n)
 
virtual u_int GetCoBoNumber () const
 
virtual u_int GetAsAdNumber () const
 
virtual int GetChannelIndex (const GETChannel *ch)
 
const GETLookupTableLookupTable () const
 
GETLookupTableLookupTable ()
 
virtual u_int GetChannelCount () const
 
virtual int GetChannelIndex (int ix, int iy) const
 
virtual GETChannelGetChannel (int ix, int iy) const
 
virtual GETChannelGetChannel (u_int n)
 
virtual GETHitMaskSetHitMask (GETHitMask *mask)
 
GETHitMaskGetHitMask () const
 
virtual int SetAnalyser (GETSystemAnalyser *a)
 
GETSystemAnalyserGetAnalyser () const
 
virtual int SetCalibProcess (const string &calib_file)
 
virtual int SetBaselineCorrection (const string &bl_file)
 
virtual int SetOutputSmoothing (double width)
 
virtual int SetAutoBaseline (u_short num_lo, u_short num_hi, u_short off_lo=0, u_short off_hi=0)
 
virtual int SetAutoBaselineLow (u_short num_lo, u_short off_lo=0)
 
virtual int SetAutoBaselineHigh (u_short num_hi, u_short off_hi=0)
 
u_int GetEventCount () const
 
string GetRunFileName () const
 
virtual int OpenRunFile (const string &fname)
 
virtual int OpenRunSerie (const string &pattern, const string &serie)
 
virtual int CloseRunFile ()
 
bool IsRunFileOpen () const
 
GETRunFileGetRunFile ()
 
virtual int ReadEvent (bool process=true)
 
virtual int AnalyseRawEvent ()
 
virtual int AnalyseCorEvent ()
 
virtual int ExtractXMLFileHeaderFrame ()
 
virtual int ExtractCoboTopoFrame ()
 
virtual int ExtractEbyedatFrame ()
 
virtual int ExtractMergeFrame ()
 
virtual int ProcessFrameData (MFMCommonFrame *frame)
 
virtual int ProcessMergeFrameData (MFMMergeFrame *frame)
 
virtual int ProcessCoBoFrameData (MFMCoboFrame *frame)
 
virtual int ProcessEbyedatFrameData (MFMEbyedatFrame *frame)
 
virtual GETChannelGetMaximumChannel (u_short info=GET::signalOut, bool integ=false)
 
virtual int OutputCorrectFPN (u_int opt_fpn=GET::CoBoCorrectFPN4)
 
virtual int ZeroSuppression (double thr=0.)
 
virtual int AnyFrameUser (MFMCommonFrame &frame)
 
virtual int MergeFrameUser (MFMMergeFrame &frame)
 
virtual int CoBoFrameUser (MFMCoboFrame &frame)
 
virtual int EbyedatFrameUser (MFMEbyedatFrame &frame)
 
 ClassDef (GETSystem, 0)
 
virtual void SetZeroSuppressMode (double thr=0.)
 
virtual void SetSaturationValue (int val)
 
virtual int GetSaturationValue () const
 
virtual int GetSaturationCount () const
 
virtual bool IsChannelSaturated (u_int ich)
 
virtual bool IsChannelSaturated (const GETChannel &ch)
 
- Public Member Functions inherited from GETObject
 GETObject ()
 
virtual ~GETObject ()
 
int GetId () const
 
virtual string GetFullId () const
 
virtual u_int GetSignalChannelCount () const
 
virtual u_int GetTotalChannelCount () const
 
virtual GETChannelGetSignalChannel (u_int n)
 
virtual GETChannelGetTotalChannel (u_int n)
 
const GETObjectGetParent () const
 
GETObjectGetParent ()
 
virtual void SetTimeStep (double dt)
 
u_int GetSampleDim ()
 
double GetTimeStep ()
 
virtual u_int GetReadoutMultiplicity (bool fpn=true) const
 
virtual double GetSignalSum (u_short info=GET::signalOut)
 
virtual void InitLocalData (u_int n, double dt)
 
virtual void ValidDataSet ()
 
virtual void ValidSimulSet ()
 
virtual void SetResponse (GETResponse *ptr, bool recur=true, bool fpn=false)
 
virtual void SetResponse (GETResponse &obj, bool recur=true, bool fpn=false)
 
virtual void SetFilter (GETFilter *ptr, bool recur=true, bool fpn=false)
 
virtual void SetFilter (GETFilter &obj, bool recur=true, bool fpn=false)
 
virtual void SetNoiseIn (GETSignalModifier *ptr, bool recur=true, bool fpn=false)
 
virtual void SetNoiseIn (GETSignalModifier &obj, bool recur=true, bool fpn=false)
 
virtual void SetNoiseOut (GETSignalModifier *ptr, bool recur=true, bool fpn=false)
 
virtual void SetNoiseOut (GETSignalModifier &obj, bool recur=true, bool fpn=false)
 
virtual void SetOutputCorrection (GETProcess *ptr, bool recur=true, bool fpn=false)
 
virtual void SetOutputCorrection (GETProcess &obj, bool recur=true, bool fpn=false)
 
virtual void RemoveOutputCorrection ()
 
virtual void SetOutputCorrectionList (bool warn=true)
 
virtual void AddOutputCorrection (GETProcess *ptr, bool recur=true, bool fpn=false)
 
virtual void AddOutputCorrection (GETProcess &obj, bool recur=true, bool fpn=false)
 
GETResponseGetResponse (bool force=true)
 
GETFilterGetFilter (bool force=true)
 
GETSignalModifierGetNoiseIn (bool force=true)
 
GETSignalModifierGetNoiseOut (bool force=true)
 
GETProcessGetOutputCorrection (bool force=true)
 
virtual int ProcessData (bool in_noise=true)
 
virtual int ProcessOutFromTst (bool in_noise=true, bool out_noise=true)
 
virtual int ProcessRecFromOut (bool out_corr=true)
 
virtual int ProcessOutputCorrection ()
 
 ClassDef (GETObject, 0)
 

Protected Attributes

GETHitMaskXYpad_mask
 Pointer to the hit mask (same as base class hit mask, but known as GETHitMaskXY)
 
- Protected Attributes inherited from GETSystem
GETSystemAnalyseranalyser
 Pointer to a data analyser.
 
u_int channel_count
 Total number of channels.
 
bool * channel_hit
 Whether the channel contains data.
 
GETChannel ** channel_summary
 Summary of channels pointers.
 
GETCoBocobo
 Array of CoBo modules.
 
u_int cobo_number
 Number of CoBo modules controlled.
 
GETCfgSetupconfig
 Configuration data.
 
u_int event_count
 Number of events read (in file)
 
GETHitMaskhit_mask
 Pointer to the hit mask.
 
GETLookupTable lookup_table
 Lookup table.
 
char * mfm_buffer
 MFM frames data buffer.
 
char ** mfm_buffer_adr
 Pointer of allocated buffer.
 
int mfm_buffer_size
 Size of allocated buffer.
 
MFMCommonFrame * mfm_frame
 Common frame for MFM in/out.
 
MFMCoboFrame * mfm_frame_cobo
 Specific CoBo frame for MFM in/out.
 
u_int mfm_frame_count
 Frame number in current file.
 
GETRunFilerun_file
 Pointer to the input run data.
 
u_int saturation_count
 Number of saturated channels (computed at raw event analysis)
 
u_int saturation_mult
 Number of saturated data to consider a channel as saturated.
 
u_int saturation_value
 Coder value for channel saturation (set to 0 not to perform the analysis)
 
double zero_threshold
 Threshold for raw data zero suppression.
 
- Protected Attributes inherited from GETObject
GETProcessLink filter
 Signal processing filter.
 
int id
 Object identifier number (set by the parent, in filiation)
 
GETProcessLink noise_in
 Simulation input noise generator.
 
GETProcessLink noise_out
 Simulation output noise generator.
 
GETProcessLink output_corr
 Output signal correction before reconstruction of input.
 
GETObjectparent
 Parent AGet chip.
 
GETProcessLink response
 Signal response function.
 

Private Member Functions

 GObject (GETActarTpc)
 

Additional Inherited Members

- Static Public Member Functions inherited from GETSystem
static void SetOptions (u_int opts)
 
static void SetOption (u_int flags, bool b=true)
 
static u_int GetOptions ()
 
static bool GetOption (u_int flags)
 
- Static Protected Attributes inherited from GETSystem
static u_int options = 0
 Options for GET system.
 

Detailed Description

This class defines a the GET system for the ACTAR TPC detectors.

The GETActarTpc class proposes the allocation of histograms that can be filled automatically when a new event is read:

  • all channels sumary (raw data and/or after corrections)
  • amplitude and time pattern of pads signal. They require the look-up table to be defined (except for the raw data summary).

Constructor & Destructor Documentation

GETActarTpc::GETActarTpc ( u_int  nx = 0,
u_int  ny = 0,
u_int  n = 0,
double  dt = 0.01L 
)

Constructor. If the pad numbers are not 0, the default look-up table and the hit mask (GETHitMaskXY) are automatically defined, otherwise they will be defined when the system is initialized.

Parameters
nxnumber pads along X direction
nynumber pads along Y direction
ndimension of data samples
dtsampling period (us)

References Init().

GETActarTpc::~GETActarTpc ( )
virtual

Destructor.

Member Function Documentation

GETActarTpc::ClassDef ( GETActarTpc  ,
 
)

for use within ROOT.

int GETActarTpc::ExtractCoboFrame ( )
virtual

Function extracting information from the CoBo data frame. It is overloaded from GETSystem to avoid processing individual CoBo/AsAd frames.

Reimplemented from GETSystem.

References GETSystem::mfm_frame.

GETChannel * GETActarTpc::GetMaxSignalChannel ( int *  ipx = NULL,
int *  ipy = NULL,
int *  ipt = NULL 
)
virtual

The function returns the pointer to the channel that contains the maximum signal (amplitude). Only channels with signal above threshold argument are considered. If no channel is found, then the function returns NULL. The FPN channels are not considered.

Parameters
ipxif not NULL, the pointer receives the X pad index
ipyif not NULL, the pointer receives the Y pad index
iptif not NULL, the pointer receives the time bucket with max. value

References GETHitMaskXY::GetMaxSignalChannel(), GETHitMaskXY::GetMaxSignalIT(), GETHitMaskXY::GetMaxSignalIX(), GETHitMaskXY::GetMaxSignalIY(), GETHitMask::IsMaskSet(), pad_mask, and GETHitMaskXY::UpdateMask().

int GETActarTpc::GetSignalBoundaries ( int &  ixmin,
int &  ixmax,
int &  iymin,
int &  iymax,
int &  itmin,
int &  itmax 
)
virtual

Function returning the X, Y and T boundaries of the signal. The boundaries are expressed in terms of bin numbers.

The function returns the number of channels for which the signal is over the threshold.

Parameters
ixminlower bin on X axis
ixmaxupper bin on X axis
iyminlower bin on Y axis
iymaxupper bin on Y axis
itminlower bin on T axis
itmaxupper bin on T axis

References GETHitMaskXY::GetBoundaries(), and pad_mask.

Referenced by GETActarEventReader::AnalysisEvent(), GetSignalBoundaries(), and GETActarTpcAnalyser::ProcessOffTrackAnalysis().

int GETActarTpc::GetSignalBoundaries ( double &  xmin,
double &  xmax,
double &  ymin,
double &  ymax,
double &  tmin,
double &  tmax 
)
virtual

Function returning the X, Y and T boundaries of the signal. The boundaries are expressed in terms of physical units (corresponding to bin center).

The function returns the number of channels for which the signal is over the threshold.

Parameters
xminlower value on X axis
xmaxupper value on X axis
yminlower value on Y axis
ymaxupper value on Y axis
tminlower value on T axis
tmaxupper value on T axis

References GETSystem::channel_summary, GetSignalBoundaries(), and GETChannel::OutSample().

GETActarTpc::GObject ( GETActarTpc  )
private

Macro from GCpp library that defines the following functions:

  • ClassName(): return the real class name of the object
  • StaticClassName(): return the used class name of the object (that may be a base class of the real object).
  • IsInstanceOf<T>(): return true if the current object is an instance of the template class name argument
  • Clone(): return an allocated copy of the object.
int GETActarTpc::Init ( u_int  nx,
u_int  ny,
u_int  n,
double  dt 
)
virtual

This function is redefined from the base class (GETSystem) in order to adapt the look-up table and the hit mask to the pads number.

Parameters
nxnumber pads along X direction
nynumber pads along Y direction
ndimension of data samples
dtsampling period (us)

References GETSystem::cobo, GETSystem::cobo_number, GETCoBo::GetChildrenNumber(), GETObject::GetFullId(), GETSystem::Init(), GETSystem::lookup_table, GETLookupTable::SetDefaultTable(), and SetHitMask().

Referenced by GETActarTpc(), and GETActarEventReader::GETInit().

GETHitMask * GETActarTpc::SetHitMask ( GETHitMaskXY mask)
virtual

This function is redefined from the base class (GETSystem) in order to force the hit mask to derive from GETHitMaskXY class.

Parameters
maskpointer to the hit mask

References GETSystem::hit_mask, pad_mask, GETHitMask::SetDataInfo(), GETSystem::SetHitMask(), and GET::signalOut.

Referenced by Init().


The documentation for this class was generated from the following files: