BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
Signature.cxx
Go to the documentation of this file.
1// #ifdef HAVE_NEW_IOSTREAMS
2// #include <sstream>
3// typedef std::stringstream my_sstream;
4// #else
5// #include <strstream>
6// typedef strstream my_sstream;
7// #endif
8
10#include "GaudiKernel/StatusCode.h"
11
13
14/// Constructors //
15Signature::Signature() : m_SignaturePrescale( 1 ), m_SignatureForcedRate( 1. ), m_Id( 0 ) {
16 m_msgSvcProvider = MessageSvcProvider::instance();
17}
18
19Signature::Signature( std::vector<HltCriteria*> vec )
20 : m_criteriaVec( vec )
21 , m_SignaturePrescale( 1 )
22 , m_SignatureForcedRate( 1. )
23 , m_Id( 0 )
24 , m_Predecessor_Id( 0 )
25 , m_Successor_Id( 0 ) {
26 m_msgSvcProvider = MessageSvcProvider::instance();
27}
28
29/// Destructor //
31 int size = m_criteriaVec.size();
32 for ( int i = 0; i < size; i++ ) delete m_criteriaVec[i];
33}
34
35/// Print method. //
37 MsgStream log( m_msgSvcProvider->msgSvc(), "Signature" );
38 log << MSG::INFO << "< ";
39 log << MSG::INFO << "> \t prescale " << m_SignaturePrescale << " \t forcedAccept "
40 << m_SignatureForcedRate << " \t id " << m_Id << endmsg;
41}
42
43void Signature::makeVectors( HltCriteria* criteria ) { m_criteriaVec.push_back( criteria ); }
44
45/// Returns the id //
46int Signature::id() const { return m_Id; }
47
48/// set the id //
49void Signature::setId( int id ) { m_Id = id; }
50
51/// Get the forced accept rate. //
52float Signature::forcedAccept() const { return m_SignatureForcedRate; }
53
54/// Set the forced accept rate. //
55void Signature::setForcedAccept( float value ) { m_SignatureForcedRate = value; }
56
57/// Get prescale. //
58int Signature::prescale() const { return m_SignaturePrescale; }
59
60/// Set prescale. //
61void Signature::setPrescale( int value ) { m_SignaturePrescale = value; }
62
63/// Get veto or not. //
64bool Signature::isVeto() const { return m_SignatureVeto; }
65
66/// set veto. //
67void Signature::setVeto( bool value ) { m_SignatureVeto = value; }
68
69int Signature::predecessorId() { return m_Predecessor_Id; }
70
71int Signature::successorId() { return m_Successor_Id; }
72
73void Signature::setPredecessorId( int id ) { m_Predecessor_Id = id; }
74
75void Signature::setSuccessorId( int id ) { m_Successor_Id = id; }
76
77void Signature::setSigLabel( std::string label ) { m_Sig_label = label; }
78
79std::string Signature::label() const { return m_Sig_label; }
80
82 int size = m_criteriaVec.size();
83 m_midMark = "";
84 for ( int i = 0; i < size; i++ )
85 {
86 if ( m_criteriaVec[i]->satisfyCriteria() )
87 {
88 m_result = m_criteriaVec[i]->getBehaviour();
89 std::string::size_type separator = m_result.find( '_' );
90 std::string perform = m_result.substr( 0, separator );
91 if ( perform == "continue" ) { m_midMark = m_result.substr( separator + 1 ); }
92 else { return m_criteriaVec[i]->idCriteria(); }
93 }
94 }
95 m_result = "";
96 return -1;
97}
dble_vec_t vec[12]
void setForcedAccept(float)
Set the forced accept rate. //.
Definition Signature.cxx:55
bool isVeto() const
Get veto or not. //.
Definition Signature.cxx:64
void setSigLabel(std::string label)
Definition Signature.cxx:77
float forcedAccept() const
Get the forced accept rate. //.
Definition Signature.cxx:52
int isCriteriaMatched()
For trigger.
Definition Signature.cxx:81
void makeVectors(HltCriteria *criteria)
Definition Signature.cxx:43
int prescale() const
Get prescale. //.
Definition Signature.cxx:58
int id() const
Returns the id //.
Definition Signature.cxx:46
Signature()
Constructors //.
Definition Signature.cxx:15
std::string label() const
Definition Signature.cxx:79
virtual ~Signature()
Destructor //.
Definition Signature.cxx:30
void setVeto(bool)
set veto. //
Definition Signature.cxx:67
void print()
Print method. //.
Definition Signature.cxx:36
void setPrescale(int)
Set prescale. //.
Definition Signature.cxx:61
void setId(int)
set the id //
Definition Signature.cxx:49
static MessageSvcProvider * instance()
Signature()
Constructors //.
Definition Signature.cxx:15