ATLAS Offline Software
Loading...
Searching...
No Matches
AlgHist.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3*/
4
6
7#ifndef MULTI_DRAW_ALG_HIST_H
8#define MULTI_DRAW_ALG_HIST_H
9
11
12
13
14//protect
15#include <MultiDraw/Global.h>
16
17#include <EventLoop/Algorithm.h>
18
19class TH1;
20
21namespace MD
22{
23 class AlgHist : public EL::Algorithm
24 {
25 //
26 // public interface
27 //
28
31 public:
32 void testInvariant () const;
33
34
38 public:
40
41
48 public:
49 AlgHist (TH1 *val_hist_swallow,
50 const std::string& val_value0,
51 const std::string& val_value1 = "",
52 const std::string& val_value2 = "",
53 const std::string& val_value3 = "");
54
55
59 public:
61
62
63 //
64 // interface inherited from EL::Algorithm
65 //
66
75 private:
77
78
89 private:
91
92
97 private:
99
100
101
102 //
103 // private interface
104 //
105
107 private:
108 TH1 *m_hist;
109
111 private:
113
115 private:
116 std::vector<std::string> m_formulas;
117
119 private:
120 std::vector<Double_t> m_values;
121
123 private:
124 std::size_t m_valnum;
125
127 private:
128 bool m_cut;
129
131 private:
132 std::vector<const Formula*> m_index;
133
135 private:
136 TH1 *m_hist2;
137
139 private:
141
143 };
144}
145
146#endif
Definition Job.h:42
std::size_t m_valnum
description: the number of values without the weight/cut
Definition AlgHist.h:124
void testInvariant() const
effects: test the invariant of this object guarantee: no-fail
bool m_cut
description: whether we use a cut
Definition AlgHist.h:128
FormulaSvc * m_formSvc
description: the formula service we are using
Definition AlgHist.h:140
virtual EL::StatusCode execute()
effects: process the next event guarantee: basic failures: algorithm dependent rationale: the virtual...
TH1 * m_hist2
description: the histogram we are filling
Definition AlgHist.h:136
virtual EL::StatusCode initialize()
effects: do everything that needs to be done before running the algorithm, e.g.
std::vector< std::string > m_formulas
description: the list of formulas used
Definition AlgHist.h:116
~AlgHist()
effects: destructor guarantee: no-fail rationale: this is needed to delete the template histogram
ClassDef(AlgHist, 1)
int m_type
description: the type of histogram used
Definition AlgHist.h:112
AlgHist(TH1 *val_hist_swallow, const std::string &val_value0, const std::string &val_value1="", const std::string &val_value2="", const std::string &val_value3="")
effects: constructor for the given histogram spec, value, and weight guarantee: strong failures: out ...
std::vector< Double_t > m_values
description: the value of the formulas
Definition AlgHist.h:120
TH1 * m_hist
description: the histogram we use as a template
Definition AlgHist.h:108
AlgHist()
effects: default constructor guarantee: no-fail rationale: this should only be called by serializatio...
std::vector< const Formula * > m_index
description: the indices to the formulas
Definition AlgHist.h:132
virtual EL::StatusCode setupJob(EL::Job &job)
effects: give the algorithm a chance to intialize the job with anything this algorithm needs.
::StatusCode StatusCode
StatusCode definition for legacy code.
This module provides a lot of global definitions, forward declarations and includes that are used by ...
Definition AlgCFlow.h:22