EvtGen
2.2.0
Monte Carlo generator of particle decays, in particular the weak decays of heavy flavour particles such as B mesons.
Loading...
Searching...
No Matches
src
EvtGenBase
EvtIdSet.cpp
Go to the documentation of this file.
1
2
/***********************************************************************
3
* Copyright 1998-2020 CERN for the benefit of the EvtGen authors *
4
* *
5
* This file is part of EvtGen. *
6
* *
7
* EvtGen is free software: you can redistribute it and/or modify *
8
* it under the terms of the GNU General Public License as published by *
9
* the Free Software Foundation, either version 3 of the License, or *
10
* (at your option) any later version. *
11
* *
12
* EvtGen is distributed in the hope that it will be useful, *
13
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
14
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
15
* GNU General Public License for more details. *
16
* *
17
* You should have received a copy of the GNU General Public License *
18
* along with EvtGen. If not, see <https://www.gnu.org/licenses/>. *
19
***********************************************************************/
20
21
#include "
EvtGenBase/EvtIdSet.hh
"
22
23
#include "
EvtGenBase/EvtPDL.hh
"
24
25
#include <initializer_list>
26
#include <set>
27
#include <string>
28
29
EvtIdSet::EvtIdSet
( std::initializer_list<EvtId> idList ) :
m_list
{ idList }
30
{
31
}
32
33
EvtIdSet::EvtIdSet
( std::initializer_list<std::string> nameList )
34
{
35
for
(
const
std::string& name : nameList ) {
36
m_list
.insert(
EvtPDL::getId
( name ) );
37
}
38
}
39
40
EvtIdSet::EvtIdSet
(
const
EvtIdSet
& set1,
const
EvtIdSet
& set2 ) :
41
m_list
{ set1.
m_list
}
42
{
43
this->
append
( set2 );
44
}
45
46
bool
EvtIdSet::contains
(
const
EvtId
&
id
)
const
47
{
48
const
auto
iter
=
m_list
.find(
id
);
49
return
iter
!=
m_list
.end();
50
}
51
52
bool
EvtIdSet::contains
(
const
std::string& name )
const
53
{
54
const
EvtId
id
{
EvtPDL::getId
( name ) };
55
return
this->
contains
(
id
);
56
}
57
58
void
EvtIdSet::append
(
const
EvtIdSet
& set1 )
59
{
60
m_list
.insert( set1.
m_list
.begin(), set1.
m_list
.end() );
61
}
EvtIdSet.hh
EvtPDL.hh
iter
EvtStreamInputIterator< typename Generator::result_type > iter(Generator gen, int N=0)
Definition
EvtStreamInputIterator.hh:109
EvtIdSet::m_list
std::set< EvtId > m_list
Definition
EvtIdSet.hh:43
EvtIdSet::append
void append(const EvtIdSet &set1)
Definition
EvtIdSet.cpp:58
EvtIdSet::EvtIdSet
EvtIdSet(std::initializer_list< EvtId > idList)
Definition
EvtIdSet.cpp:29
EvtIdSet::contains
bool contains(const EvtId &id) const
Definition
EvtIdSet.cpp:46
EvtId
Definition
EvtId.hh:27
EvtPDL::getId
static EvtId getId(const std::string &name)
Definition
EvtPDL.cpp:283
Generated by
1.16.1