10 #include <TTreeIndex.h>
79 bool AddTrigger(
const double aTime,
const double aFrequency,
80 const double aSNR,
const double aQ,
81 const double aTstart,
const double aTend,
82 const double aFstart,
const double aFend,
83 const double aAmplitude,
const double aPhase);
91 bool SortTriggers(
void);
139 inline void SetClusterTag(
const unsigned int aClusterIndex,
const int aTag){ Ctag[aClusterIndex]=aTag; };
146 for(
unsigned int c=0; c<Ctstart.size(); c++) Ctag[c]=aTag;
158 bool SetTriggerBranchStatus(
const string aBname,
const bool aStatus=
true);
164 void ResetClusters(
void);
200 bool Clusterize(
const int aTag=1);
214 if(Ttree->GetEntry(aTriggerIndex)>0)
return Ttime;
224 if(Ttree->GetEntry(aTriggerIndex)>0)
return Tfreq;
234 if(Ttree->GetEntry(aTriggerIndex)>0)
return Tq;
244 if(Ttree->GetEntry(aTriggerIndex)>0)
return Tsnr;
254 if(Ttree->GetEntry(aTriggerIndex)>0)
return Ttstart;
264 if(Ttree->GetEntry(aTriggerIndex)>0)
return Ttend;
274 if(Ttree->GetEntry(aTriggerIndex)>0)
return Tfstart;
284 if(Ttree->GetEntry(aTriggerIndex)>0)
return Tfend;
294 if(Ttree->GetEntry(aTriggerIndex)>0)
return Tamp;
304 if(Ttree->GetEntry(aTriggerIndex)>0)
return Tph;
314 if(Ttree->GetEntry(aTriggerIndex)>0)
return Ttend-Ttstart;
324 if(Ttree->GetEntry(aTriggerIndex)>0)
return Tfend-Tfstart;
339 return Ctime[aClusterIndex];
348 return Cfreq[aClusterIndex];
357 return Cq[aClusterIndex];
366 return Csnr[aClusterIndex];
375 return Ctstart[aClusterIndex];
384 return Ctend[aClusterIndex];
393 return Cfstart[aClusterIndex];
402 return Cfend[aClusterIndex];
411 return Camp[aClusterIndex];
420 return Cph[aClusterIndex];
429 return Ctend[aClusterIndex]-Ctstart[aClusterIndex];
438 return Cfend[aClusterIndex]-Cfstart[aClusterIndex];
447 return Csize[aClusterIndex];
456 return Ctag[aClusterIndex];
465 return Cfirstentry[aClusterIndex];
488 int GetClusterIndex(
const double aTime);
500 bool ReadTriggerFiles(
const string aPattern,
const string aDirectory=
"");
Time segment list management.
Manage a trigger set.
Definition: Triggers.h:27
double GetTriggerPhase(const Long64_t aTriggerIndex)
Returns the phase of a given trigger [rad].
Definition: Triggers.h:303
vector< double > Ctime
Cluster GPS time.
Definition: Triggers.h:529
double GetTriggerFrequencyEnd(const Long64_t aTriggerIndex)
Returns the end frequency of a given trigger [Hz].
Definition: Triggers.h:283
double clusterize_snr_thr
Minimum cluster SNR .
Definition: Triggers.h:552
bool readmode
Read/write mode: true=read, false=write.
Definition: Triggers.h:547
void SetClusterTag(const int aTag)
Sets a new tag value for all clusters.
Definition: Triggers.h:145
TTree * Ttree
Pointer to active Ttree.
Definition: Triggers.h:510
double GetClusterAmplitude(const unsigned int aClusterIndex)
Returns the amplitude of a given cluster.
Definition: Triggers.h:410
vector< double > Ctend
Cluster GPS time end.
Definition: Triggers.h:531
double Tsnr
Trigger SNR.
Definition: Triggers.h:516
double GetClusterMaxDuration(void)
Returns the maximal duration of clusters [s].
Definition: Triggers.h:476
double Ttstart
Trigger GPS starting time.
Definition: Triggers.h:517
Triggers(const unsigned int aVerbose=0)
Constructor of the Triggers class.
unsigned int GetClusterSize(const unsigned int aClusterIndex)
Returns the size (number of triggers) a given cluster.
Definition: Triggers.h:446
vector< double > Camp
Cluster Amplitude.
Definition: Triggers.h:536
TChain * Ttree_read
Trigger tree read-mode.
Definition: Triggers.h:511
double GetTriggerTimeStart(const Long64_t aTriggerIndex)
Returns the start time of a given trigger [s].
Definition: Triggers.h:253
double Tfend
Trigger ending frequency [Hz].
Definition: Triggers.h:520
double Ttime
Trigger GPS time.
Definition: Triggers.h:513
void SetClusterizeDt(const double aDt)
Sets a new clustering parameter.
Definition: Triggers.h:98
double Tamp
Trigger amplitude.
Definition: Triggers.h:521
Long64_t GetClusterFirstTrigger(const unsigned int aClusterIndex)
Returns the index of the first trigger in a given cluster.
Definition: Triggers.h:464
double GetClusterTimeEnd(const unsigned int aClusterIndex)
Returns the end time of a given cluster [s].
Definition: Triggers.h:383
double Tfreq
Trigger frequency [Hz].
Definition: Triggers.h:514
double GetTriggerSnr(const Long64_t aTriggerIndex)
Returns the signal-to-noise ratio of a given trigger.
Definition: Triggers.h:243
double cl_meandur
Cluster mean duration.
Definition: Triggers.h:542
double GetClusterBandwidth(const unsigned int aClusterIndex)
Returns the bandwidth of a given cluster [Hz].
Definition: Triggers.h:437
double cl_maxdur
Cluster max duration.
Definition: Triggers.h:543
unsigned int GetClusterN(void)
Returns the current number of clusters in memory.
Definition: Triggers.h:331
vector< double > Ctstart
Cluster GPS time start.
Definition: Triggers.h:530
double GetClusterSnr(const unsigned int aClusterIndex)
Returns the signal-to-noise ratio of a given cluster.
Definition: Triggers.h:365
double Ttend
Trigger GPS ending time.
Definition: Triggers.h:518
vector< unsigned int > Csize
Cluster size.
Definition: Triggers.h:540
double GetTriggerFrequencyStart(const Long64_t aTriggerIndex)
Returns the start frequency of a given trigger [Hz].
Definition: Triggers.h:273
double GetClusterTime(const unsigned int aClusterIndex)
Returns the time of a given cluster [s].
Definition: Triggers.h:338
vector< double > Cph
Cluster phase.
Definition: Triggers.h:538
double GetTriggerQ(const Long64_t aTriggerIndex)
Returns the quality factor of a given trigger.
Definition: Triggers.h:233
int Ttstart_us
Trigger starting time (us).
Definition: Triggers.h:523
double cl_totdur
Cluster total duration.
Definition: Triggers.h:544
double GetClusterFrequency(const unsigned int aClusterIndex)
Returns the frequency of a given cluster [Hz].
Definition: Triggers.h:347
string srandid
Random integer (string) to identify the class object.
Definition: Triggers.h:507
double GetClusterQ(const unsigned int aClusterIndex)
Returns the quality factor of a given cluster.
Definition: Triggers.h:356
vector< double > Cfreq
Cluster frequency.
Definition: Triggers.h:532
int randid
Random integer to identify the class object.
Definition: Triggers.h:506
TTree * Ttree_write
Trigger tree write-mode.
Definition: Triggers.h:512
double clusterize_delta_t
Time clustering parameter [s].
Definition: Triggers.h:550
double GetTriggerDuration(const Long64_t aTriggerIndex)
Returns the duration of a given trigger [s].
Definition: Triggers.h:313
double GetClusterDuration(const unsigned int aClusterIndex)
Returns the duration of a given cluster [s].
Definition: Triggers.h:428
double GetTriggerAmplitude(const Long64_t aTriggerIndex)
Returns the amplitude of a given trigger.
Definition: Triggers.h:293
void SetClusterizeSnrThr(const double aSnrThr)
Sets the SNR threshold for clustering: .
Definition: Triggers.h:124
vector< double > Cq
Cluster Q.
Definition: Triggers.h:537
vector< int > Ctag
Cluster tag.
Definition: Triggers.h:541
double GetClusterTimeStart(const unsigned int aClusterIndex)
Returns the start time of a given cluster [s].
Definition: Triggers.h:374
double GetTriggerTime(const Long64_t aTriggerIndex)
Returns the time of a given trigger [s].
Definition: Triggers.h:213
double Tfstart
Trigger starting frequency [Hz].
Definition: Triggers.h:519
double GetTriggerFrequency(const Long64_t aTriggerIndex)
Returns the frequency of a given trigger [Hz].
Definition: Triggers.h:223
double GetClusterizeDt(void)
Gets the clustering parameter.
Definition: Triggers.h:104
double GetClusterMeanDuration(void)
Returns the mean duration of clusters [s].
Definition: Triggers.h:471
Long64_t GetTriggerN(void)
Returns the current number of triggers in memory.
Definition: Triggers.h:206
vector< double > Csnr
Cluster SNR.
Definition: Triggers.h:535
double GetTriggerBandwidth(const Long64_t aTriggerIndex)
Returns the bandwidth of a given trigger [Hz].
Definition: Triggers.h:323
double GetClusterFrequencyEnd(const unsigned int aClusterIndex)
Returns the end frequency of a given cluster [Hz].
Definition: Triggers.h:401
int Verbose
verbosity level
Definition: Triggers.h:505
vector< double > Cfend
Cluster frequency end.
Definition: Triggers.h:534
double Tph
Trigger phase [rad].
Definition: Triggers.h:522
vector< double > Cfstart
Cluster frequency start.
Definition: Triggers.h:533
void SetClusterizeSizeMin(const unsigned int aSizeMin)
Sets the cluster minimal size: .
Definition: Triggers.h:111
unsigned int clusterize_sizemin
Minimum cluster size .
Definition: Triggers.h:551
double GetClusterPhase(const unsigned int aClusterIndex)
Returns the phase of a given cluster [rad].
Definition: Triggers.h:419
vector< Long64_t > Cfirstentry
Cluster first trigger entry.
Definition: Triggers.h:539
double GetClusterFrequencyStart(const unsigned int aClusterIndex)
Returns the start frequency of a given cluster [Hz].
Definition: Triggers.h:392
double GetClusterizeSnrThr(void)
Gets the SNR threshold for clustering.
Definition: Triggers.h:130
double Tq
Trigger Q.
Definition: Triggers.h:515
double GetClusterTotalDuration(void)
Returns the total duration of clusters [s].
Definition: Triggers.h:481
int GetClusterTag(const unsigned int aClusterIndex)
Returns the tag of a given cluster.
Definition: Triggers.h:455
double GetTriggerTimeEnd(const Long64_t aTriggerIndex)
Returns the end time of a given trigger [s].
Definition: Triggers.h:263
void SetClusterTag(const unsigned int aClusterIndex, const int aTag)
Sets a new cluster tag value.
Definition: Triggers.h:139
unsigned int GetClusterizeSizeMin(void)
Gets the cluster minimal size: .
Definition: Triggers.h:117
Long64_t * Toffsets
Tree offsets in the chain (read-mode) - DO NOT DELETE.
Definition: Triggers.h:524