]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - TPC/AliTPCConfigParser.cxx
store ntuple in same file as histos (Renu)
[u/mrichter/AliRoot.git] / TPC / AliTPCConfigParser.cxx
index fa6bc6dabcdfd4e8f1a6038ce24ddfeca92eb25a..f9261bbc0a1d07d680156c87dba02e69a421aa70 100644 (file)
@@ -143,7 +143,7 @@ Int_t AliTPCConfigParser::ParseConfigFileTxt(const char* cfgfile)
     TObjArray  *objArr=0x0;
     if (nentries==2){
       TObject *objVal=arrValues->At(1);
-      const TString &str=((TObjString*)objVal)->GetString();
+      const TString str=objVal->GetName();
       if (str.Contains(","))
         objArr=str.Tokenize(",");
       else{
@@ -179,11 +179,11 @@ const char* AliTPCConfigParser::GetData(const char *key, UInt_t position)
   //
   //Get value for the speciefied key
   //
-  TObject *val=((TObjArray*)fConfigMap->FindObject(key))->At(position);
-  if ( !val ) {
-    return "";
-  }
-  return (((TObjString*)val)->GetString()).Data();
+  TObjArray *arr=((TObjArray*)fConfigMap->FindObject(key));
+  if (position>=(UInt_t)(arr->GetEntries())) return "";
+  TObject *val=arr->At(position);
+  if ( !val ) return "";
+  return val->GetName();
 }
 //_____________________________________________________________________
 Float_t AliTPCConfigParser::GetValue(const TObject *key, UInt_t position)
@@ -202,11 +202,11 @@ const char* AliTPCConfigParser::GetData(const TObject *key, UInt_t position)
   //
   //Get value for the speciefied key
   //
-  TObject *val=((TObjArray*)fConfigMap->FindObject(key))->At(position);
-  if ( !val ) {
-    return "";
-  }
-  return (((TObjString*)val)->GetString()).Data();
+  TObjArray *arr=((TObjArray*)fConfigMap->FindObject(key));
+  if (position>=((UInt_t)arr->GetEntries())) return "";
+  TObject *val=arr->At(position);
+  if ( !val ) return "";
+  return val->GetName();
 }
 //_____________________________________________________________________
 Int_t AliTPCConfigParser::GetNumberOfValues(const char* key) const
@@ -246,7 +246,10 @@ TObject* AliTPCConfigParser::NextValue(TObject *key){
 TObject* AliTPCConfigParser::NextValueIter(TObjArray *key){
   if (!key) return 0;
   //check if the collection has changed
-  if (fValIter && key!=fValIter->GetCollection()) delete fValIter;
+  if (fValIter && key!=fValIter->GetCollection()) {
+    delete fValIter;
+    fValIter=0x0;
+  }
   if (!fValIter) fValIter=key->MakeIterator();
   TObject *value=fValIter->Next();
   if (!value) {