The Gaudi Framework  v36r16 (ea80daf8)
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
P1D.h
Go to the documentation of this file.
1 /***********************************************************************************\
2 * (c) Copyright 1998-2019 CERN for the benefit of the LHCb and ATLAS collaborations *
3 * *
4 * This software is distributed under the terms of the Apache version 2 licence, *
5 * copied verbatim in the file "LICENSE". *
6 * *
7 * In applying this licence, CERN does not waive the privileges and immunities *
8 * granted to it by virtue of its status as an Intergovernmental Organization *
9 * or submit itself to any jurisdiction. *
10 \***********************************************************************************/
11 #ifndef GAUDISVC_P1D_H
12 #define GAUDISVC_P1D_H
13 
14 #include "Generic1D.h"
15 #include <AIDA/IProfile1D.h>
16 #include <GaudiKernel/DataObject.h>
17 #include <TProfile.h>
18 
19 #include <nlohmann/json.hpp>
20 
21 /*
22  * Gaudi namespace
23  */
24 namespace Gaudi {
25 
32  class GAUDI_API Profile1D : public DataObject, public Generic1D<AIDA::IProfile1D, TProfile> {
33  typedef AIDA::IAnnotation IAnnotation;
34 
35  private:
36  void init( const std::string& title, bool initialize_axis = true );
37 
38  public:
40  Profile1D();
42  Profile1D( TProfile* rep );
43 
45  bool fill( double x, double y, double weight = 1. ) override;
46  virtual bool setBinContents( int i, int entries, double height, double error, double spread, double centre );
48  nlohmann::json toJSON() const;
50  const CLID& clID() const override { return classID(); }
51  static const CLID& classID() { return CLID_ProfileH; }
52 
53  private:
55 
56  }; // end class IProfile1D
57 } // end namespace Gaudi
58 
59 #endif // GAUDISVC_P1D_H
Gaudi::Profile1D::clID
const CLID & clID() const override
Retrieve reference to class defininition identifier.
Definition: P1D.h:50
Gaudi::Profile1D::classID
static const CLID & classID()
Definition: P1D.h:51
std::string
STL class.
jsonFromLHCbLog.json
json
Definition: jsonFromLHCbLog.py:87
Generic1D.h
CLID
unsigned int CLID
Class ID definition.
Definition: ClassID.h:18
Gaudi
Header file for std:chrono::duration-based Counters.
Definition: __init__.py:1
DataObject.h
DataObject
Definition: DataObject.h:40
std::mutex
STL class.
Gaudi::Generic1D
Definition: Generic1D.h:46
Gaudi::Profile1D::IAnnotation
AIDA::IAnnotation IAnnotation
Definition: P1D.h:33
Gaudi::Utils::Histos::fill
GAUDI_API void fill(AIDA::IHistogram1D *histo, const double value, const double weight=1.0)
simple function to fill AIDA::IHistogram1D objects
Definition: Fill.cpp:45
Gaudi::Profile1D
Definition: P1D.h:32
GAUDI_API
#define GAUDI_API
Definition: Kernel.h:81
Gaudi::Profile1D::m_fillSerialization
std::mutex m_fillSerialization
Definition: P1D.h:54