ATLAS Offline Software
Loading...
Searching...
No Matches
TRIGGERidentity.h
Go to the documentation of this file.
1/* // -*- C++ -*- */
2
3/*
4 Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
5*/
6
7#ifndef TRIGGERIDENTITY_H
8#define TRIGGERIDENTITY_H
9
10#include <iostream>
11#include <sstream>
12typedef std::ostringstream osstream;
14#define NTYPE 3
15#define NTHRESHOLD 3
16
17enum TrigType { None, Low, High };
19
21private:
22 static const char s_type_tag[NTYPE][8];
23 static const char s_threshold_tag[NTHRESHOLD][7];
24 static const float s_pt_value[NTYPE][NTHRESHOLD];
25
26private:
30
31public:
35
37 bool operator==(const TRIGGERidentity&) const;
38 bool operator!=(const TRIGGERidentity&) const;
39 bool operator<(const TRIGGERidentity&) const;
40
41 operator bool();
42 bool operator!();
43
44 TrigType type(void) const { return m_type; }
45 Threshold threshold(void) const { return m_threshold; }
46 bool overlap(void) const { return m_overlap; }
47 float pt(void) const { return s_pt_value[m_type][m_threshold]; }
48
49 bool searchForHigh(void) const;
50 bool highest(TrigType) const;
51
52 void Print(std::ostream&, bool) const;
53};
54
55template <class X> X& operator<<(X& stream, const TRIGGERidentity& data) {
56 osstream display;
57
58 data.Print(display, false);
59 stream << display.str();
60 return stream;
61}
62
63#endif
char data[hepevt_bytes_allocation_ATLAS]
Definition HepEvt.cxx:11
TrigType
@ High
@ Low
@ None
Threshold
@ SecondTh
@ FirstTh
@ ThirdTh
#define NTYPE
std::ostringstream osstream
X & operator<<(X &stream, const TRIGGERidentity &data)
#define NTHRESHOLD
bool operator<(const TRIGGERidentity &) const
static const float s_pt_value[NTYPE][NTHRESHOLD]
bool searchForHigh(void) const
bool operator!=(const TRIGGERidentity &) const
void Print(std::ostream &, bool) const
float pt(void) const
bool highest(TrigType) const
Threshold threshold(void) const
bool overlap(void) const
bool operator==(const TRIGGERidentity &) const
TRIGGERidentity & operator=(const TRIGGERidentity &)
TrigType type(void) const
Threshold m_threshold
static const char s_type_tag[NTYPE][8]
static const char s_threshold_tag[NTHRESHOLD][7]