]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - STEER/CDB/AliDCSSensor.cxx
STEER/CDB: Missing delete in AliDCSSensor dtor
[u/mrichter/AliRoot.git] / STEER / CDB / AliDCSSensor.cxx
index cb0aa4e5c94c305b5d2cc78f1cc36a58a02fae0e..2d32ac0406e36058233ef0fa4bd6b749cfc34c1e 100644 (file)
@@ -25,6 +25,7 @@
 
 #include "AliDCSSensor.h"
 #include "TDatime.h"
+#include "TCanvas.h"
 ClassImp(AliDCSSensor)
 
 const Double_t kSecInHour = 3600.; // seconds in one hour
@@ -68,6 +69,16 @@ AliDCSSensor::AliDCSSensor(const AliDCSSensor& source) :
    if (source.fFit) fFit = (AliSplineFit*)source.fFit->Clone();
 }
 
+AliDCSSensor::~AliDCSSensor(){
+  //
+  // Destructor
+  //
+  if(fGraph)
+    delete fGraph;
+  fGraph=0;
+
+}
+
 AliDCSSensor& AliDCSSensor::operator=(const AliDCSSensor& source){
 //
 // assignment operator
@@ -79,21 +90,39 @@ AliDCSSensor& AliDCSSensor::operator=(const AliDCSSensor& source){
 }
 
 
-void AliDCSSensor::Print(const Option_t* option="") const{
-  //
+void AliDCSSensor::Print(const Option_t* option) const{
   //
+  // print function
   //  
   TString opt = option; opt.ToLower();
   printf("%s:%s\n",GetTitle(), GetName());
-  printf("%s\n",fStringID.GetTitle());
-  if (!fSensors) return;
-  Int_t nsensors=fSensors->GetEntries();
-  for (Int_t i=0; i<nsensors; i++){
-    printf("Sensor Nr%d\n",i);
-    if (fSensors->At(i)) fSensors->At(i)->Print(option);
+  printf("%s\n",fStringID.Data());
+
+}
+
+void AliDCSSensor::Draw(Option_t* option) {
+  //
+  // draw function - to viusalize sensor
+  // Unfortuantelly - it  make a memory leak as function Draw does not return the object pointer
+  //
+  TCanvas * canvas = new TCanvas((fStringID+option).Data(), (fStringID+option).Data()); 
+  if (fGraph){
+    // transform points to time in s
+    Int_t npoints = fGraph->GetN();
+    for (Int_t i=0; i<npoints; i++){
+      fGraph->GetX()[i]=fGraph->GetX()[i]*3600+fStartTime;
+    }
+    fGraph->Draw("alp");
+    return;
   }
+  canvas->cd();
+  TGraph * graph = MakeGraph(100);  // memory leak - we can not modify the content - const method
+  graph->Draw(option);              // 
+  //
 }
 
+
+
 //_____________________________________________________________________________
 Double_t AliDCSSensor::GetValue(UInt_t timeSec)
 {