ATLAS Offline Software
Loading...
Searching...
No Matches
HanConfigAssessor.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef dqiHanConfigAssessor_h
6#define dqiHanConfigAssessor_h
7
8#include <iostream>
9#include <string>
10
11#include <TList.h>
12#include <TFile.h>
13#include <TObject.h>
14#include <TObjString.h>
15#include <map>
16
20
21#ifndef __CINT__
22#include <boost/shared_ptr.hpp>
23#endif
24
26ATLAS_NO_CHECK_FILE_THREAD_SAFETY; // standalone application
27
28namespace dqm_core {
29class Parameter;
30class Region;
31class Node;
32}
33
34
35namespace dqi {
36
37class HanConfigAssessor : public TObject {
38public:
39
40#ifndef __CINT__
41 class Visitor {
42 public:
43 virtual ~Visitor() { }
44 virtual boost::shared_ptr<dqm_core::Node>
45 Visit( const HanConfigAssessor* node, boost::shared_ptr<dqm_core::Region> dqParent ) = 0;
46 };
47#endif
48
52
53 virtual ~HanConfigAssessor();
54
55 virtual std::string GetUniqueName() const;
56
57 virtual void SetName( std::string name_ );
58 virtual const char* GetName() const;
59
60 virtual const char* GetHistPath() const;
61
62 virtual void SetAlgName( std::string name_ );
63 virtual const char* GetAlgName() const;
64
65 virtual void SetAlgLibName( std::string name_ );
66 virtual const char* GetAlgLibName() const;
67
68 virtual void SetAlgRefName( std::string name_ );
69 virtual std::string GetAlgRefName() const;
70
71 virtual const char* GetAlgRefString() const;
72
73 virtual void AddAlgPar( const HanConfigAlgPar& algPar_ );
74 virtual HanConfigAlgPar GetAlgPar( std::string name_ ) const;
75 virtual TIter GetAllAlgPars() const;
76
77 virtual void AddAlgStrPar( const HanConfigParMap& algPar_ );
78 virtual HanConfigParMap GetAlgStrPar( std::string name_ ) const;
79 virtual TIter GetAllAlgStrPars() const;
80
81 virtual void AddAlgLimit( const HanConfigAlgLimit& algLim_ );
82 virtual HanConfigAlgLimit GetAlgLimit( std::string name_ ) const;
83 virtual TIter GetAllAlgLimits() const;
84
85 virtual void AddAnnotation( const HanConfigParMap& annotation_ );
86 virtual const HanConfigParMap* GetAnnotation( std::string name_ ) const;
87 virtual TIter GetAllAnnotations() const;
88
89 virtual void SetWeight( float weight_ );
90 virtual float GetWeight() const;
91
92 virtual void SetIsRegex( bool isRegex_ );
93 virtual bool GetIsRegex() const;
94
95 virtual TSeqCollection* GetList( TDirectory* basedir, std::map<std::string,TSeqCollection*>& mp );
96
97
98#ifndef __CINT__
99 virtual void Accept( Visitor& visitor, boost::shared_ptr<dqm_core::Region> dqParent ) const;
100#endif // __CINT__
101
102 virtual void PrintIOStream( std::ostream& o ) const;
103
104protected:
105
106 TObjString m_name;
107
108 TObjString m_algName;
109 TObjString m_algLibName;
110 TObjString m_algRefName;
111
112 TSeqCollection* m_algPars;
113 TSeqCollection* m_algStrPars;
114 TSeqCollection* m_algLimits;
115 TSeqCollection* m_annotations;
116
117 float m_weight;
119
120//Get rid of Root macros that confuse Doxygen
122 ClassDef( HanConfigAssessor, 6 ) // A histogram with an associated algorithm, producing an assessment
124
125};
126
127} // namespace dqi
128
129std::ostream& operator<<( std::ostream& o, const dqi::HanConfigAssessor& p );
130std::ostream& operator<<( std::ostream& o, const dqi::HanConfigAssessor* p );
131
132#endif
std::ostream & operator<<(std::ostream &o, const dqi::HanConfigAssessor &p)
Define macros for attributes used to control the static checker.
#define ATLAS_NO_CHECK_FILE_THREAD_SAFETY
virtual boost::shared_ptr< dqm_core::Node > Visit(const HanConfigAssessor *node, boost::shared_ptr< dqm_core::Region > dqParent)=0
virtual HanConfigAlgLimit GetAlgLimit(std::string name_) const
virtual void AddAlgPar(const HanConfigAlgPar &algPar_)
TSeqCollection * m_algLimits
virtual float GetWeight() const
virtual const char * GetAlgName() const
virtual std::string GetUniqueName() const
virtual TIter GetAllAlgStrPars() const
virtual const char * GetHistPath() const
virtual TIter GetAllAlgLimits() const
virtual void SetAlgName(std::string name_)
virtual const char * GetAlgLibName() const
TSeqCollection * m_annotations
virtual void SetIsRegex(bool isRegex_)
virtual const HanConfigParMap * GetAnnotation(std::string name_) const
virtual TSeqCollection * GetList(TDirectory *basedir, std::map< std::string, TSeqCollection * > &mp)
virtual bool GetIsRegex() const
virtual void SetAlgRefName(std::string name_)
virtual void SetWeight(float weight_)
HanConfigAssessor & operator=(const HanConfigAssessor &other)
virtual HanConfigParMap GetAlgStrPar(std::string name_) const
virtual void SetAlgLibName(std::string name_)
virtual void AddAlgLimit(const HanConfigAlgLimit &algLim_)
virtual void AddAlgStrPar(const HanConfigParMap &algPar_)
TSeqCollection * m_algStrPars
virtual std::string GetAlgRefName() const
virtual void Accept(Visitor &visitor, boost::shared_ptr< dqm_core::Region > dqParent) const
virtual void AddAnnotation(const HanConfigParMap &annotation_)
virtual void SetName(std::string name_)
virtual TIter GetAllAlgPars() const
virtual void PrintIOStream(std::ostream &o) const
virtual const char * GetName() const
virtual TIter GetAllAnnotations() const
virtual const char * GetAlgRefString() const
virtual HanConfigAlgPar GetAlgPar(std::string name_) const
Definition node.h:24