Add class for intersection of a user and a default configuration
authormfasel <mfasel@lbl.gov>
Thu, 13 Nov 2014 10:07:01 +0000 (11:07 +0100)
committermfasel <mfasel@lbl.gov>
Fri, 21 Nov 2014 12:16:19 +0000 (13:16 +0100)
PWG/CMakelibPWGEMCAL.pkg
PWG/EMCAL/AliEMCALConfiguration.cxx
PWG/EMCAL/AliEMCALConfiguration.h
PWG/PWGEMCALLinkDef.h

index c32868e..1c3b594 100644 (file)
@@ -62,6 +62,7 @@ set ( SRCS
  EMCAL/AliEMCALConfigurationObject.cxx
  EMCAL/AliEMCALConfiguration.cxx
  EMCAL/AliEMCALConfigHandler.cxx
+ EMCAL/AliEMCALConfigurationMatcher.cxx
 )
 
 string ( REPLACE ".cxx" ".h" HDRS "${SRCS}" )
index cc76562..d677480 100644 (file)
@@ -69,7 +69,7 @@ void AliEMCALConfiguration::AddConfiguration(AliEMCALConfiguration* conf) {
   fParams->Add(conf);
 }
 
-AliEMCALConfigurationValue* AliEMCALConfiguration::GetValue(const char *key) {
+AliEMCALConfigurationValue* AliEMCALConfiguration::GetValue(const char *key) const {
   AliEMCALConfigurationObject *val = dynamic_cast<AliEMCALConfigurationObject *>(fParams->FindObject(key));
   if(!val) return NULL;
   return val->GetValue();
index 38b61ca..de3ca35 100644 (file)
@@ -13,6 +13,8 @@
 
 class TList;
 
+class AliEMCALConfigurationValue;
+
 class AliEMCALConfiguration : public TNamed {
 public:
   AliEMCALConfiguration(const char *name);
@@ -24,7 +26,8 @@ public:
   void Build(TList *entries);
   const char *CreateJSONString() const;
 
-  AliEMCALConfigurationValue *GetValue(const char *key);
+  Bool_t HasKey(const char *key) const { return GetValue(key) != NULL; }
+  AliEMCALConfigurationValue *GetValue(const char *key) const ;
   void Print(Option_t *) const;
 
 protected:
index ad5e6c3..41473ba 100644 (file)
@@ -45,6 +45,7 @@
 #pragma link C++ class AliEMCALConfigurationValueDouble+;
 #pragma link C++ class AliEMCALConfigurationValueBool+;
 #pragma link C++ class AliEMCALConfigurationValueString+;
+#pragma link C++ class AliEMCALConfigurationMatcher+;
 
 #endif