added Save function (X. Lopez)
authorrvernet <rvernet@f7af4fe6-9843-0410-8265-dc069ae4e863>
Mon, 23 Nov 2009 11:08:08 +0000 (11:08 +0000)
committerrvernet <rvernet@f7af4fe6-9843-0410-8265-dc069ae4e863>
Mon, 23 Nov 2009 11:08:08 +0000 (11:08 +0000)
CORRFW/AliCFFrame.cxx
CORRFW/AliCFFrame.h

index 6b90cbd..7de534a 100644 (file)
@@ -49,3 +49,25 @@ AliCFFrame::AliCFFrame(const Char_t* name, const Char_t* title) :
   // named constructor
 }
 
+//____________________________________________________________________
+void AliCFFrame::Save(const Char_t *outfile) const
+{
+  //
+  // Save 'this' to a root file
+  //
+
+  const char *dirname = "./";
+  TString filename = outfile;
+  TFile *file=0x0;
+  if((gSystem->FindFile(dirname,filename))!=NULL){
+    file = new TFile( outfile,"UPDATE");
+  }
+  else{
+    file = new TFile( outfile,"RECREATE");
+  } 
+  file->cd();
+  //write the object to a file
+  this->Write(GetName(),TObject::kSingleKey);
+  file->Close();
+  delete file;
+}
index cacfe87..509eaae 100644 (file)
@@ -19,7 +19,7 @@ class AliCFFrame : public TNamed
   AliCFFrame(const Char_t* name,const Char_t* title);
   virtual ~AliCFFrame() {} ;
   virtual void Copy(TObject& c) const {TNamed::Copy(c);}
-
+  virtual void Save(const Char_t *outfile) const;
   virtual Int_t      GetNVar()                                                   const = 0 ; // number of variables
   virtual void       PrintBinLimits()                                            const = 0 ; // prints the bin limits for each variable
   virtual void       PrintNBins()                                                const = 0 ; // prints the number of bins for each variable