GWOLLUM  4.2.0
Tools for gravitational-wave analyses
TriggerBuffer Class Reference

Create and manage a buffer for triggers. More...

#include <TriggerBuffer.h>

Inheritance diagram for TriggerBuffer:
Collaboration diagram for TriggerBuffer:

Public Member Functions

bool AddTrigger (const double aTime, const double aFrequency, const double aSNR, const double aQ, const double aTstart, const double aTend, const double aFstart, const double aFend, const double aAmplitude, const double aPhase)
 Adds a trigger to the buffer. More...
 
bool Flush (void)
 Flushes the triggers in the buffer to the Triggers structure. More...
 
unsigned int GetSize (void)
 Returns the size of the buffer. More...
 
Long64_t GetTriggerN (void)
 Returns the number of triggers currently in the buffer. More...
 
void Reset (void)
 Resets the buffer. More...
 
void ResetAfter (const double aTime)
 Removes triggers (and segments) from the buffer when they start after a given time. More...
 
bool SetSegments (Segments *aSeg)
 Sets new segments. More...
 
Constructors and destructors
 TriggerBuffer (const unsigned int aSize, const string aStreamName, const int unsigned aVerbose=0)
 Constructor of the TriggerBuffer class. More...
 
virtual ~TriggerBuffer (void)
 Destructor of the TriggerBuffer class. More...
 
- Public Member Functions inherited from MakeTriggers
void Reset (void)
 Resets all. More...
 
void SetProcessName (const string aProcessName)
 Set the process name. More...
 
void SetProcessVersion (const string aProcessVersion)
 Sets the version for this process. More...
 
string Write (const string aOutDir=".", const string aFileFormat="", const string aFileName="", const string aSubDir="", const string aWriteMode="RECREATE", const bool aWriteMeta=true)
 Writes triggers to disk. More...
 
bool WriteMetaData (void)
 Writes the metadata in a ROOT file. More...
 
 MakeTriggers (const string aStreamName, const unsigned int aVerbose=0)
 Constructor of the MakeTriggers class. More...
 
virtual ~MakeTriggers (void)
 Destructor of the MakeTriggers class. More...
 
- Public Member Functions inherited from Triggers
bool AddTrigger (const double aTime, const double aFrequency, const double aSNR, const double aQ, const double aTstart, const double aTend, const double aFstart, const double aFend, const double aAmplitude, const double aPhase)
 Adds a trigger to the Triggers object (only available in write-mode). More...
 
bool Clusterize (const int aTag=1)
 Clusters the triggers. More...
 
double GetClusterAmplitude (const unsigned int aClusterIndex)
 Returns the amplitude of a given cluster. More...
 
double GetClusterBandwidth (const unsigned int aClusterIndex)
 Returns the bandwidth of a given cluster [Hz]. More...
 
double GetClusterDuration (const unsigned int aClusterIndex)
 Returns the duration of a given cluster [s]. More...
 
Long64_t GetClusterFirstTrigger (const unsigned int aClusterIndex)
 Returns the index of the first trigger in a given cluster. More...
 
double GetClusterFrequency (const unsigned int aClusterIndex)
 Returns the frequency of a given cluster [Hz]. More...
 
double GetClusterFrequencyEnd (const unsigned int aClusterIndex)
 Returns the end frequency of a given cluster [Hz]. More...
 
double GetClusterFrequencyStart (const unsigned int aClusterIndex)
 Returns the start frequency of a given cluster [Hz]. More...
 
int GetClusterIndex (const double aTime)
 Returns the index of cluster overlapping a given GPS time. More...
 
double GetClusterizeDt (void)
 Gets the clustering \(\delta t\) parameter. More...
 
unsigned int GetClusterizeSizeMin (void)
 Gets the cluster minimal size: \(M_{min}\). More...
 
double GetClusterizeSnrThr (void)
 Gets the SNR threshold for clustering. More...
 
double GetClusterMaxDuration (void)
 Returns the maximal duration of clusters [s]. More...
 
double GetClusterMeanDuration (void)
 Returns the mean duration of clusters [s]. More...
 
unsigned int GetClusterN (void)
 Returns the current number of clusters in memory. More...
 
double GetClusterPhase (const unsigned int aClusterIndex)
 Returns the phase of a given cluster [rad]. More...
 
double GetClusterQ (const unsigned int aClusterIndex)
 Returns the quality factor of a given cluster. More...
 
unsigned int GetClusterSize (const unsigned int aClusterIndex)
 Returns the size (number of triggers) a given cluster. More...
 
double GetClusterSnr (const unsigned int aClusterIndex)
 Returns the signal-to-noise ratio of a given cluster. More...
 
int GetClusterTag (const unsigned int aClusterIndex)
 Returns the tag of a given cluster. More...
 
double GetClusterTime (const unsigned int aClusterIndex)
 Returns the time of a given cluster [s]. More...
 
double GetClusterTimeEnd (const unsigned int aClusterIndex)
 Returns the end time of a given cluster [s]. More...
 
double GetClusterTimeStart (const unsigned int aClusterIndex)
 Returns the start time of a given cluster [s]. More...
 
double GetClusterTotalDuration (void)
 Returns the total duration of clusters [s]. More...
 
double GetTriggerAmplitude (const Long64_t aTriggerIndex)
 Returns the amplitude of a given trigger. More...
 
double GetTriggerBandwidth (const Long64_t aTriggerIndex)
 Returns the bandwidth of a given trigger [Hz]. More...
 
double GetTriggerDuration (const Long64_t aTriggerIndex)
 Returns the duration of a given trigger [s]. More...
 
double GetTriggerFrequency (const Long64_t aTriggerIndex)
 Returns the frequency of a given trigger [Hz]. More...
 
double GetTriggerFrequencyEnd (const Long64_t aTriggerIndex)
 Returns the end frequency of a given trigger [Hz]. More...
 
double GetTriggerFrequencyStart (const Long64_t aTriggerIndex)
 Returns the start frequency of a given trigger [Hz]. More...
 
Long64_t GetTriggerN (void)
 Returns the current number of triggers in memory. More...
 
double GetTriggerPhase (const Long64_t aTriggerIndex)
 Returns the phase of a given trigger [rad]. More...
 
double GetTriggerQ (const Long64_t aTriggerIndex)
 Returns the quality factor of a given trigger. More...
 
double GetTriggerSnr (const Long64_t aTriggerIndex)
 Returns the signal-to-noise ratio of a given trigger. More...
 
double GetTriggerTime (const Long64_t aTriggerIndex)
 Returns the time of a given trigger [s]. More...
 
double GetTriggerTimeEnd (const Long64_t aTriggerIndex)
 Returns the end time of a given trigger [s]. More...
 
double GetTriggerTimeStart (const Long64_t aTriggerIndex)
 Returns the start time of a given trigger [s]. More...
 
bool ReadTriggerFiles (const string aPattern, const string aDirectory="")
 Reads a set of trigger files. More...
 
void Reset (void)
 Resets the Triggers object. More...
 
void ResetClusters (void)
 Resets the list of clusters. More...
 
void SetClusterizeDt (const double aDt)
 Sets a new clustering \(\delta t\) parameter. More...
 
void SetClusterizeSizeMin (const unsigned int aSizeMin)
 Sets the cluster minimal size: \(M_{min}\). More...
 
void SetClusterizeSnrThr (const double aSnrThr)
 Sets the SNR threshold for clustering: \(\rho_{min}\). More...
 
void SetClusterTag (const int aTag)
 Sets a new tag value for all clusters. More...
 
void SetClusterTag (const unsigned int aClusterIndex, const int aTag)
 Sets a new cluster tag value. More...
 
bool SetTriggerBranchStatus (const string aBname, const bool aStatus=true)
 Modifies the branch status of the trigger tree. More...
 
bool SortTriggers (void)
 Sort triggers by increasing values of tstart (only available in write-mode). More...
 
 Triggers (const unsigned int aVerbose=0)
 Constructor of the Triggers class. More...
 
virtual ~Triggers (void)
 Destructor of the Triggers class. More...
 
- Public Member Functions inherited from Segments
bool AddSegment (const double aGpsStart, const double aGpsEnd, const int aTag=1)
 Adds a segment to the list. More...
 
bool AddSegments (Segments *aSeg)
 Adds a segment list to the list. More...
 
bool Append (const double aGpsStart, const double aGpsEnd, const int aTag=1)
 Appends a segment to the list. More...
 
bool Append (Segments *aSeg)
 Appends segments to the list. More...
 
bool Append (TTree *aSegmentTree)
 Appends segments to the list. More...
 
bool Append (vector< double > aGpsStarts, vector< double > aGpsEnds, vector< double > aTags)
 Appends segments to the list. More...
 
bool ApplyPadding (const double aPadStart, const double aPadEnd)
 Apply a padding to all segments. More...
 
void Dump (unsigned int aNcols=2, const string aTxtFileName="")
 Dumps the current segment list in the standard output or in a file. More...
 
double GetDuration (const unsigned int aSegmentIndex=0)
 Returns the duration of a given segment. More...
 
double GetEnd (const unsigned int aSegmentIndex=0)
 Returns the ending time of a given segment. More...
 
vector< double > GetEnds (void)
 Returns the list of segment ends. More...
 
double GetFirst ()
 Returns the starting time of the first segment. More...
 
TH1I * GetHisto (const double aOffset=0.0)
 Returns an histogram representing the segments. More...
 
TH1I * GetHistogram (const double aGpsStart, const double aGpsEnd, const double aOffset=0.0)
 Returns an histogram representing the segments. More...
 
double GetLast ()
 Returns the ending time of the last segment. More...
 
double GetLiveTime (const double aGpsStart, const double aGpsEnd)
 Returns the livetime between two GPS times. More...
 
double GetLiveTime (const unsigned int aSegmentIndex)
 Returns the livetime of one segment. More...
 
double GetLiveTime (void)
 Returns the total livetime. More...
 
double GetLiveTimeWithTag (const int aTag)
 Returns the livetime for segments with a given tag. More...
 
unsigned int GetN (void)
 Returns the number of time segments in the list. More...
 
unsigned int GetNWithTag (const int aTag)
 Returns the number of time segments in the list with a given tag. More...
 
int GetSegmentStartBefore (const double aGps)
 Returns the segment starting just before a given GPS time. More...
 
double GetStart (const unsigned int aSegmentIndex=0)
 Returns the starting time of a given segment. More...
 
vector< double > GetStarts (void)
 Returns the list of segment starts. More...
 
bool GetStatus (void) const
 Returns the status of the Segments object. More...
 
int GetTag (const unsigned int aSegmentIndex=0)
 Returns the tag of a given segment. More...
 
vector< int > GetTags (void)
 Returns the list of segment tags. More...
 
TTree * GetTree (const double aGpsStart, const double aGpsEnd)
 Returns a formatted TTree representing the segments. More...
 
TTree * GetTree (void)
 Returns a formatted TTree representing the segments. More...
 
bool Intersect (const double aGpsStart, const double aGpsEnd, const int aTag=1)
 Intersects with a segment. More...
 
bool Intersect (Segments *aSeg)
 Intersects with a segment list. More...
 
bool IsInsideSegment (const double aGps)
 Checks whether a given GPS time is inside a segment of the list. More...
 
bool IsInsideSegment (unsigned int &aSegmentIndex, const double aGps)
 Checks whether a given GPS time is inside a segment of the list. More...
 
bool MakeSecond (void)
 Rounds segment boundaries to integer seconds. More...
 
void Reset (void)
 Resets the segment list. More...
 
bool Reverse (void)
 Reverses the segment list. More...
 
void SetTag (const unsigned int aSegmentIndex, const int aTag)
 Tags a given segment. More...
 
void SetTags (const int aTag)
 Tags all segments. More...
 
bool TruncateAfter (const double aGps)
 Removes segments after a given time. More...
 
bool TruncateBefore (const double aGps)
 Removes segments before a given time. More...
 
 Segments (void)
 Default constructor of the Segments class. More...
 
 Segments (const string aSegmentFile, const int aDefaultTag=1)
 Constructor of the Segments class. More...
 
 Segments (TTree *aSegmentTree)
 Constructor of the Segments class. More...
 
 Segments (const string aFilePattern, const string aDirectory, const string aTreeName)
 Constructor of the Segments class. More...
 
 Segments (const vector< double > aGpsStarts, const vector< double > aGpsEnds)
 Constructor of the Segments class. More...
 
 Segments (const double aGpsStart, const double aGpsEnd, const int aTag=1)
 Constructor of the Segments class. More...
 
virtual ~Segments (void)
 Destructor of the Segments class. More...
 
- Public Member Functions inherited from Streams
void GetDetectorAMResponse (double &aFplus, double &aFcross, const double aRa, const double aDec, const double aPsi, const double aGmst)
 Computes antenna factors \(F_+\) and \(F_\times\). More...
 
unsigned int GetDetectorIndex (void)
 Returns the detector index for this stream. More...
 
string GetDetectorPrefix (void)
 Returns the detector prefix for this stream. More...
 
string GetDirectory (const string aOutDir=".")
 Returns the stream directory. More...
 
double GetLocalTime (const double aRa, const double aDec, const double aGeocentricTime)
 Converts the geocentric time to the detector local time [s]. More...
 
string GetName (void)
 Returns the stream full name. More...
 
string GetNameConv (void)
 Returns the stream name using the LIGO-Virgo file name convention. More...
 
string GetNamePrefix (void)
 Returns the stream name prefix. More...
 
string GetNameSuffix (void)
 Returns the stream name suffix. More...
 
string GetNameSuffixUnderScore (void)
 Returns the stream name suffix with only underscores. More...
 
string GetTriggerFileName (const unsigned int aGpsStart, const unsigned int aDuration, const string aFileFormat="root", const string aProcessName="PROC", const string aOutDir=".")
 Returns the stream trigger file name. More...
 
void SetName (const string aName)
 Sets a new name to the stream. More...
 
 Streams (const string aName, const unsigned int aVerbose=0)
 Constructor of the Streams class. More...
 
virtual ~Streams (void)
 Destructor of the Streams class. More...
 
- Public Member Functions inherited from Sample
double GetHighPassFrequency (void)
 Returns the current highpass frequency. More...
 
unsigned int GetNativeFrequency (void)
 Returns the current native sampling frequency [Hz]. More...
 
unsigned int GetWindowSize (void)
 Returns the window size (=0 if no windowing). More...
 
unsigned int GetWorkingFrequency (void)
 Returns the current working sampling frequency [Hz]. More...
 
void SetDCRemoval (const bool aDCremove=true)
 Activates/Deactivates the DC removal. More...
 
bool SetFrequencies (const unsigned int aNativeFrequency, const unsigned int aWorkingFrequency, const double aHighPassFrequency=0.0)
 Defines frequencies for the transformation. More...
 
bool SetHighPassFrequency (const double aHighPassFrequency)
 Defines a highpass frequency. More...
 
bool SetNativeFrequency (const int aNativeFrequency)
 Sets a new native sampling frequency. More...
 
void SetWindow (const unsigned int aWindowSize, double *aWindow)
 Defines the window. More...
 
bool SetWorkingFrequency (const unsigned int aWorkingFrequency)
 Sets a new working sampling frequency. More...
 
bool Transform (const unsigned int aInSize, double *aInData, const unsigned int aOutSize, double *aOutData)
 Transforms data. More...
 
 Sample (const unsigned int aVerbosity=0)
 Constructor of the Sample class. More...
 
virtual ~Sample (void)
 Destructor of the Sample class. More...
 
- Public Member Functions inherited from GwollumOptions
void Add (const string aTag, const string aKey, const double aDefaultValue, const unsigned int aSize=0)
 Adds an option to the list (double). More...
 
void Add (const string aTag, const string aKey, const int aDefaultValue, const unsigned int aSize=0)
 Adds an option to the list (int). More...
 
void Add (const string aTag, const string aKey, const string aDefaultValue, const unsigned int aSize=0)
 Adds an option to the list (string). More...
 
void Add (const string aTag, const string aKey, const unsigned int aDefaultValue, const unsigned int aSize=0)
 Adds an option to the list (unsigned int). More...
 
void AddOptionValue (const string aTag, const string aKey, const double aValue)
 Appends a value to a variable-size option (double). More...
 
void AddOptionValue (const string aTag, const string aKey, const int aValue)
 Appends a value to a variable-size option (int). More...
 
void AddOptionValue (const string aTag, const string aKey, const string aValue)
 Appends a value to a variable-size option (string). More...
 
void AddOptionValue (const string aTag, const string aKey, const unsigned int aValue)
 Appends a value to a variable-size option (unsigned int). More...
 
void Copy (GwollumOptions *aG)
 Copies an external GwollumOptions object into this. More...
 
void FillTree (void)
 Saves options in a TTree. More...
 
double GetOptionDefaultD (const unsigned int aOptionIndex)
 Returns an option default value. More...
 
int GetOptionDefaultI (const unsigned int aOptionIndex)
 Returns an option default value. More...
 
string GetOptionDefaultS (const unsigned int aOptionIndex)
 Returns an option default value. More...
 
unsigned int GetOptionDefaultU (const unsigned int aOptionIndex)
 Returns an option default value. More...
 
unsigned int GetOptionIndex (const string aTag, const string aKey)
 Returns the option index. More...
 
string GetOptionKey (const unsigned int aOptionIndex)
 Returns an option key. More...
 
unsigned int GetOptionNumberOfValues (const string aTag, const string aKey)
 Returns the option number of values. More...
 
unsigned int GetOptionSize (const string aTag, const string aKey)
 Returns the option size. More...
 
unsigned int GetOptionSize (const unsigned int aOptionIndex)
 Returns an option size. More...
 
unsigned int GetOptionsN (void)
 Returns the number of options. More...
 
string GetOptionTag (const unsigned int aOptionIndex)
 Returns an option tag. More...
 
char GetOptionType (const string aTag, const string aKey)
 Returns the option type. More...
 
char GetOptionType (const unsigned int aOptionIndex)
 Returns an option type. More...
 
double GetOptionValueD (const string aTag, const string aKey, const unsigned int aValIndex)
 Returns an option value (double). More...
 
bool GetOptionValueD (double &aValue, const string aTag, const string aKey, const unsigned int aValIndex)
 Returns an option value (double). More...
 
int GetOptionValueI (const string aTag, const string aKey, const unsigned int aValIndex)
 Returns an option value (int). More...
 
bool GetOptionValueI (int &aValue, const string aTag, const string aKey, const unsigned int aValIndex)
 Returns an option value (int). More...
 
string GetOptionValueS (const string aTag, const string aKey, const unsigned int aValIndex)
 Returns an option value (string). More...
 
bool GetOptionValueS (string &aValue, const string aTag, const string aKey, const unsigned int aValIndex)
 Returns an option value (string). More...
 
vector< double > GetOptionValuesD (const string aTag, const string aKey)
 Returns the list of option values (double). More...
 
vector< int > GetOptionValuesI (const string aTag, const string aKey)
 Returns the list of option values (int). More...
 
vector< string > GetOptionValuesS (const string aTag, const string aKey)
 Returns the list of option values (string). More...
 
vector< unsigned int > GetOptionValuesU (const string aTag, const string aKey)
 Returns the list of option values (unsigned int). More...
 
unsigned int GetOptionValueU (const string aTag, const string aKey, const unsigned int aValIndex)
 Returns an option value (unsigned int). More...
 
bool GetOptionValueU (unsigned int &aValue, const string aTag, const string aKey, const unsigned int aValIndex)
 Returns an option value (unsigned int). More...
 
bool Is (const string aTag, const string aKey)
 Checks whether an option exists. More...
 
bool IsProvided (const string aTag, const string aKey)
 Checks whether an option was provided. More...
 
bool IsTheSame (GwollumOptions *aG)
 Checks whether two GwollumOptions objects are identical. More...
 
bool ReadChain (bool &aIsUniform, TChain *aChain)
 Reads options from a TChain. More...
 
unsigned int ReadTextFile (const string aOptionFile)
 Reads an option file and extract the list of options. More...
 
bool ReadTree (const string aRootFileName, const string aTreeName)
 Reads options from a TTree in a ROOT file. More...
 
bool ReadTree (TTree *aTree)
 Reads options from a TTree. More...
 
void RemoveOption (const string aTag, const string aKey)
 Removes an option. More...
 
void Reset (void)
 Resets the list of options. More...
 
void ResetOption (const string aTag, const string aKey)
 Resets the list of option values. More...
 
void SetDefault (const string aTag, const string aKey)
 Sets an option to default value. More...
 
void SetOptionValue (const string aTag, const string aKey, const unsigned int aValIndex, const double aValue)
 Sets a value of an option (double). More...
 
void SetOptionValue (const string aTag, const string aKey, const unsigned int aValIndex, const int aValue)
 Sets a value of an option (int). More...
 
void SetOptionValue (const string aTag, const string aKey, const unsigned int aValIndex, const string aValue)
 Sets a value of an option (string). More...
 
void SetOptionValue (const string aTag, const string aKey, const unsigned int aValIndex, const unsigned int aValue)
 Sets a value of an option (unsigned int). More...
 
void WriteH5 (H5::H5File *aFile, H5::DataSpace &aDataSpace)
 Writes the options as attributes in a hdf5 file. More...
 
void WriteTextFile (const string aFileName)
 Writes all options in a text file. More...
 
void WriteTree (const string aTreeName)
 Writes the option TTree in a TFile. More...
 
void WriteTree (const string aTreeName, const string aRootFileName, const string aSubDirectory="")
 Writes the option TTree in a TFile. More...
 
 GwollumOptions (void)
 Constructor of the GwollumOptions class. More...
 
virtual ~GwollumOptions (void)
 Destructor of the GwollumOptions class. More...
 

Private Attributes

double * b_amp
 Trigger amplitude. More...
 
double * b_fend
 Trigger frequency end. More...
 
double * b_freq
 Trigger peak frequency. More...
 
double * b_fstart
 Trigger frequency start. More...
 
double * b_ph
 Trigger phase. More...
 
unsigned int b_pos
 Current buffer index. More...
 
double * b_q
 Trigger Q. More...
 
double * b_snr
 Trigger SNR. More...
 
double * b_tend
 Trigger time end. More...
 
double * b_time
 Trigger peak time. More...
 
double * b_tstart
 Trigger time start. More...
 
unsigned int BufferSize
 Buffer size. More...
 
vector< double > s_end
 List of ends. More...
 
vector< int > s_pos
 Buffer index for that segment. More...
 
vector< double > s_start
 List of starts. More...
 

Additional Inherited Members

- Protected Attributes inherited from MakeTriggers
double Mend
 Meta end time. More...
 
double Mfmax
 Meta maximum fend. More...
 
double Mfmin
 Meta minimum fstart. More...
 
string Mprocessname
 Meta process name. More...
 
string Mprocessuser
 Meta user name. More...
 
string Mprocessversion
 Meta process version. More...
 
double Mqmax
 Meta maximum Q. More...
 
double Mqmin
 Meta minimum Q. More...
 
double Msnrmax
 Meta maximum SNR. More...
 
double Msnrmin
 Meta minimum SNR. More...
 
double Mstart
 Meta start time. More...
 
TTree * Mtree
 Metadata tree. More...
 
- Protected Attributes inherited from Triggers
int randid
 Random integer to identify the class object. More...
 
string srandid
 Random integer (string) to identify the class object. More...
 
double Tamp
 Trigger amplitude. More...
 
double Tfend
 Trigger ending frequency [Hz]. More...
 
double Tfreq
 Trigger frequency [Hz]. More...
 
double Tfstart
 Trigger starting frequency [Hz]. More...
 
Long64_t * Toffsets
 Tree offsets in the chain (read-mode) - DO NOT DELETE. More...
 
double Tph
 Trigger phase [rad]. More...
 
double Tq
 Trigger Q. More...
 
double Tsnr
 Trigger SNR. More...
 
double Ttend
 Trigger GPS ending time. More...
 
double Ttime
 Trigger GPS time. More...
 
TTree * Ttree
 Pointer to active Ttree. More...
 
TChain * Ttree_read
 Trigger tree read-mode. More...
 
TTree * Ttree_write
 Trigger tree write-mode. More...
 
double Ttstart
 Trigger GPS starting time. More...
 
int Ttstart_us
 Trigger starting time (us). More...
 
int Verbose
 verbosity level More...
 
- Protected Attributes inherited from Streams
string Name
 Stream name. More...
 
- Protected Attributes inherited from Sample
double fHighPassFrequency
 Cutoff frequency. More...
 
unsigned int fNativeFrequency
 Native sampling frequency. More...
 
bool fRemoveDC
 DC removal flag. More...
 
unsigned int fVerbosity
 Verbosity level. More...
 
double * fWindow
 Window. More...
 
unsigned int fWindowSize
 Window size. More...
 
unsigned int fWorkingFrequency
 Working sampling frequency. More...
 

Detailed Description

Create and manage a buffer for triggers.

First the size of the buffer is defined in the constructor TriggerBuffer(). Then triggers can be added with the following sequence:

At any time it is possible to remove the last triggers added in the buffer with ResetAfter().

Author
Florent Robinet

Constructor & Destructor Documentation

◆ TriggerBuffer()

TriggerBuffer::TriggerBuffer ( const unsigned int  aSize,
const string  aStreamName,
const int unsigned  aVerbose = 0 
)

Constructor of the TriggerBuffer class.

The size of the buffer is defined. This size determines the maximum number of triggers which can be saved in the buffer. The memory for the buffer is then allocated.

Parameters
[in]aSizeBuffer size.
[in]aStreamNameStream name.
[in]aVerboseVerbosity level.

◆ ~TriggerBuffer()

TriggerBuffer::~TriggerBuffer ( void  )
virtual

Destructor of the TriggerBuffer class.

Member Function Documentation

◆ AddTrigger()

bool TriggerBuffer::AddTrigger ( const double  aTime,
const double  aFrequency,
const double  aSNR,
const double  aQ,
const double  aTstart,
const double  aTend,
const double  aFstart,
const double  aFend,
const double  aAmplitude,
const double  aPhase 
)

Adds a trigger to the buffer.

This function overloads Triggers::AddTrigger() to fill the buffer instead the final Triggers structure.

Note
If the buffer size is 0, Triggers::AddTrigger() is called directly.
Returns
false if the buffer is full.
Parameters
[in]aTimeTrigger GPS time [s].
[in]aFrequencyTrigger frequency [Hz].
[in]aSNRTrigger Signal-to-noise ratio.
[in]aQTrigger Quality factor.
[in]aTstartTrigger GPS start time [s].
[in]aTendTrigger GPS end time [s].
[in]aFstartTrigger frequency start [Hz].
[in]aFendTrigger frequency end [Hz].
[in]aAmplitudeTrigger amplitude.
[in]aPhaseTrigger phase [rad].

◆ Flush()

bool TriggerBuffer::Flush ( void  )

Flushes the triggers in the buffer to the Triggers structure.

Moreover the current segments are added to the Triggers structure. The buffer is reset after the flush.

◆ GetSize()

unsigned int TriggerBuffer::GetSize ( void  )
inline

Returns the size of the buffer.

◆ GetTriggerN()

Long64_t TriggerBuffer::GetTriggerN ( void  )
inline

Returns the number of triggers currently in the buffer.

Note
The number of triggers in the Triggers structure is returned if the buffer is of size 0.

◆ Reset()

void TriggerBuffer::Reset ( void  )

Resets the buffer.

◆ ResetAfter()

void TriggerBuffer::ResetAfter ( const double  aTime)

Removes triggers (and segments) from the buffer when they start after a given time.

Warning
Entire segments added with SetSegments() are removed.
Parameters
[in]aTimeTime after which segments are removed.

◆ SetSegments()

bool TriggerBuffer::SetSegments ( Segments aSeg)

Sets new segments.

This function should be called before adding triggers in the buffer. It defines the time segments corresponding to the triggers.

Warning
It is the user responsibility to guarantee that the triggers and the segments are compatible.
If this function is called several times in a row, segments should be consecutive with no time overlap.
Parameters
[in]aSegSegments.

Member Data Documentation

◆ b_amp

double* TriggerBuffer::b_amp
private

Trigger amplitude.

◆ b_fend

double* TriggerBuffer::b_fend
private

Trigger frequency end.

◆ b_freq

double* TriggerBuffer::b_freq
private

Trigger peak frequency.

◆ b_fstart

double* TriggerBuffer::b_fstart
private

Trigger frequency start.

◆ b_ph

double* TriggerBuffer::b_ph
private

Trigger phase.

◆ b_pos

unsigned int TriggerBuffer::b_pos
private

Current buffer index.

◆ b_q

double* TriggerBuffer::b_q
private

Trigger Q.

◆ b_snr

double* TriggerBuffer::b_snr
private

Trigger SNR.

◆ b_tend

double* TriggerBuffer::b_tend
private

Trigger time end.

◆ b_time

double* TriggerBuffer::b_time
private

Trigger peak time.

◆ b_tstart

double* TriggerBuffer::b_tstart
private

Trigger time start.

◆ BufferSize

unsigned int TriggerBuffer::BufferSize
private

Buffer size.

◆ s_end

vector<double> TriggerBuffer::s_end
private

List of ends.

◆ s_pos

vector<int> TriggerBuffer::s_pos
private

Buffer index for that segment.

◆ s_start

vector<double> TriggerBuffer::s_start
private

List of starts.


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