ROOT logo
/*
 * AliEMCALConfiguration.h
 *
 *  Created on: 06.11.2014
 *      Author: markusfasel
 */

#ifndef _ALIEMCALCONFIGURATION_H_
#define _ALIEMCALCONFIGURATION_H_

#include <ostream>
#include <TNamed.h>

class TList;

class AliJSONValue;

class AliEMCALConfiguration : public TNamed {
public:
  AliEMCALConfiguration(const char *name);
  virtual ~AliEMCALConfiguration();

  void AddParam(const char *name, AliJSONValue *value);
  void AddConfiguration(AliEMCALConfiguration * conf);
  void Build(const char * jsonstring);
  void Build(TList *entries);
  const char *CreateJSONString() const;

  Bool_t HasKey(const char *key) const { return GetValue(key) != NULL; }
  AliJSONValue *GetValue(const char *key) const ;
  void Print(Option_t *) const;

protected:
  TList *fParams;

private:
  AliEMCALConfiguration(const AliEMCALConfiguration &ref);
  AliEMCALConfiguration &operator=(const AliEMCALConfiguration &ref);

  ClassDef(AliEMCALConfiguration, 1);
};

std::ostream &operator<<(std::ostream &, const AliEMCALConfiguration &); 

#endif /* _ALIEMCALCONFIGURATION_H_ */
 AliEMCALConfiguration.h:1
 AliEMCALConfiguration.h:2
 AliEMCALConfiguration.h:3
 AliEMCALConfiguration.h:4
 AliEMCALConfiguration.h:5
 AliEMCALConfiguration.h:6
 AliEMCALConfiguration.h:7
 AliEMCALConfiguration.h:8
 AliEMCALConfiguration.h:9
 AliEMCALConfiguration.h:10
 AliEMCALConfiguration.h:11
 AliEMCALConfiguration.h:12
 AliEMCALConfiguration.h:13
 AliEMCALConfiguration.h:14
 AliEMCALConfiguration.h:15
 AliEMCALConfiguration.h:16
 AliEMCALConfiguration.h:17
 AliEMCALConfiguration.h:18
 AliEMCALConfiguration.h:19
 AliEMCALConfiguration.h:20
 AliEMCALConfiguration.h:21
 AliEMCALConfiguration.h:22
 AliEMCALConfiguration.h:23
 AliEMCALConfiguration.h:24
 AliEMCALConfiguration.h:25
 AliEMCALConfiguration.h:26
 AliEMCALConfiguration.h:27
 AliEMCALConfiguration.h:28
 AliEMCALConfiguration.h:29
 AliEMCALConfiguration.h:30
 AliEMCALConfiguration.h:31
 AliEMCALConfiguration.h:32
 AliEMCALConfiguration.h:33
 AliEMCALConfiguration.h:34
 AliEMCALConfiguration.h:35
 AliEMCALConfiguration.h:36
 AliEMCALConfiguration.h:37
 AliEMCALConfiguration.h:38
 AliEMCALConfiguration.h:39
 AliEMCALConfiguration.h:40
 AliEMCALConfiguration.h:41
 AliEMCALConfiguration.h:42
 AliEMCALConfiguration.h:43
 AliEMCALConfiguration.h:44
 AliEMCALConfiguration.h:45