]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG/EMCAL/AliEMCALConfiguration.h
Refactoring of the package
[u/mrichter/AliRoot.git] / PWG / EMCAL / AliEMCALConfiguration.h
CommitLineData
1cee71ae 1/*
2 * AliEMCALConfiguration.h
3 *
4 * Created on: 06.11.2014
5 * Author: markusfasel
6 */
7
c4109efb 8#ifndef _ALIEMCALCONFIGURATION_H_
9#define _ALIEMCALCONFIGURATION_H_
1cee71ae 10
ec5c3ac7 11#include <ostream>
1cee71ae 12#include <TNamed.h>
13
14class TList;
15
c4109efb 16class AliJSONValue;
5a56104e 17
1cee71ae 18class AliEMCALConfiguration : public TNamed {
19public:
20 AliEMCALConfiguration(const char *name);
21 virtual ~AliEMCALConfiguration();
22
c4109efb 23 void AddParam(const char *name, AliJSONValue *value);
1cee71ae 24 void AddConfiguration(AliEMCALConfiguration * conf);
25 void Build(const char * jsonstring);
26 void Build(TList *entries);
27 const char *CreateJSONString() const;
28
5a56104e 29 Bool_t HasKey(const char *key) const { return GetValue(key) != NULL; }
c4109efb 30 AliJSONValue *GetValue(const char *key) const ;
68d39387 31 void Print(Option_t *) const;
1cee71ae 32
33protected:
34 TList *fParams;
35
97bf0336 36private:
37 AliEMCALConfiguration(const AliEMCALConfiguration &ref);
38 AliEMCALConfiguration &operator=(const AliEMCALConfiguration &ref);
39
1cee71ae 40 ClassDef(AliEMCALConfiguration, 1);
41};
42
ec5c3ac7 43std::ostream &operator<<(std::ostream &, const AliEMCALConfiguration &);
44
c4109efb 45#endif /* _ALIEMCALCONFIGURATION_H_ */