34 m_mother( mother ), m_dau( dau )
52 string::size_type i = s.find_first_not_of(
" " );
53 string::size_type j = s.find_first_of(
" ", i );
55 if ( i == string::npos ) {
57 <<
"No non-space character found" << endl;
61 if ( j == string::npos ) {
63 <<
"No space before -> found" << endl;
69 i = s.find_first_not_of(
" ", j );
70 j = s.find_first_of(
"->", j );
73 <<
"Multiple mothers?" << i <<
"," << j << endl;
79 i = s.find_first_not_of(
" ", j );
80 j = s.find_first_of(
" ", i );
82 if ( i == string::npos )
84 if ( j == string::npos ) {
85 m_dau.push_back(
string( s, i, s.size() - i + 1 ) );
88 m_dau.push_back(
string( s, i, j - i ) );
105 assert( 0 <= i && i < (
int)
m_dau.size() );
106 return m_dau[i].c_str();
111 string ret =
m_mother + string(
" -> " );
113 for (
size_t i = 0; i <
m_dau.size() - 1; i++ ) {
114 ret += string(
m_dau[i] ) + string(
" " );
123 for (
size_t i = 0; i <
m_dau.size(); i++ ) {
124 os <<
" " <<
m_dau[i].c_str();
ostream & operator<<(ostream &os, const EvtDecayMode &mode)
std::ostream & EvtGenReport(EvtGenSeverity severity, const char *facility=nullptr)
std::vector< std::string > m_dau
const char * mother() const
std::string q(EvtCyclic3::Pair i) const
EvtDecayMode(const char *decay)
const char * dau(int i) const
std::ostream & print(std::ostream &) const
std::string m(EvtCyclic3::Pair i) const
std::string dal(EvtCyclic3::Pair i, EvtCyclic3::Pair j) const