8#ifndef TRIGBUNCHCROSSINGTOOL_BUNCHTRAIN_H
9#define TRIGBUNCHCROSSINGTOOL_BUNCHTRAIN_H
std::ostream & operator<<(std::ostream &stream, const Trig::BunchTrain &bt)
Output operator for BunchTrain objects.
A smart integer class representing bunch crossings.
A smart set of BunchCrossing objects.
bool validate()
Check the spacing of the bunches in the train.
BunchTrain & operator=(const BunchTrain &rhs)
Assignment operator.
const_iterator m_front
Iterator pointing to the first bunch.
bool isInside(const BunchCrossing &bc) const
Check if a bunch crossing is inside this train.
const_iterator train_back() const
Iterator pointing to the last bunch in the train.
int m_spacing
Spacing of the bunches in nanoseconds.
BunchTrain()
Default constructor.
bool m_gapFound
Flag specifying if the train spreads over the "BCID turnover".
int distance(const BunchCrossing &bc) const
"Distance" of a bunch crossing from this bunch train
int spacing() const
Spacing of the bunches in this train in nanoseconds.
const_iterator train_front() const
Iterator pointing to the first bunch in the train.
const_iterator m_back
Iterator pointing to the last bunch.
The common trigger namespace for trigger analysis tools.
bool operator<(const BunchTrain &bt1, const BunchTrain &bt2)
This operator is here to be able to put BunchTrain objects into ordered containers like std::set and ...