AraDisplay/AraCorrelationFactory.cxx
00001 00002 00003 00004 00005 00006 00007 00008 #include <fstream> 00009 #include <iostream> 00010 #include "AraDisplayConventions.h" 00011 #include "AraCorrelationFactory.h" 00012 00013 //#include "AraConventions.h" 00014 #include "AraGeomTool.h" 00015 #include "AraWaveformGraph.h" 00016 #include "FFTtools.h" 00017 00018 #include "TString.h" 00019 #include "TObjArray.h" 00020 #include "TObjString.h" 00021 #include "TVector3.h" 00022 #include "TROOT.h" 00023 #include "TPaveText.h" 00024 #include "TPad.h" 00025 #include "TText.h" 00026 #include "TLatex.h" 00027 #include "TGraph.h" 00028 #include "AraWaveformGraph.h" 00029 #include "TStyle.h" 00030 #include "TCanvas.h" 00031 #include "TAxis.h" 00032 #include "TH1.h" 00033 #include "THStack.h" 00034 #include "TList.h" 00035 #include "TObject.h" 00036 #include "TTimeStamp.h" 00037 00038 00039 00040 AraCorrelationFactory* AraCorrelationFactory::fgInstance = 0; 00041 00042 00043 AraCorrelationFactory::AraCorrelationFactory() 00044 { 00045 //Default constructor 00046 fDeltaT=1./2.6; 00047 fgInstance=this; 00048 fGrWave[0]=NULL; 00049 fGrWave[1]=NULL; 00050 00051 } 00052 00053 AraCorrelationFactory::~AraCorrelationFactory() 00054 { 00055 //Default destructor 00056 } 00057 00058 00059 00060 //______________________________________________________________________________ 00061 AraCorrelationFactory* AraCorrelationFactory::Instance() 00062 { 00063 //static function 00064 return (fgInstance) ? (AraCorrelationFactory*) fgInstance : new AraCorrelationFactory(); 00065 } 00066 00067 void AraCorrelationFactory::addWaveformToCorrelation(AraWaveformGraph *inputWave) 00068 { 00069 char graphTitle[180]; 00070 if(fGrWave[0]==NULL) 00071 fGrWave[0]=inputWave; 00072 else { 00073 fGrWave[1]=inputWave; 00074 //Now we can correlate 00075 TGraph *grCor = FFTtools::getInterpolatedCorrelationGraph(fGrWave[0],fGrWave[1],fDeltaT); 00076 // if(fGrWave[0]->fChan!=8) { 00077 // sprintf(graphTitle,"Correlation Ant %d %c -%d %c",fGrWave[0]->fAnt, 00078 // AnitaPol::polAsChar(fGrWave[0]->fPol),fGrWave[1]->fAnt, 00079 // AnitaPol::polAsChar(fGrWave[1]->fPol)); 00080 // } 00081 // else { 00082 // sprintf(graphTitle,"Correlation SURF %d Chan %d - SURF %d Chan %d", 00083 // fGrWave[0]->fSurf+1,fGrWave[0]->fChan+1, 00084 // fGrWave[1]->fSurf+1,fGrWave[1]->fChan+1); 00085 // } 00086 new TCanvas(); 00087 grCor->SetTitle(graphTitle); 00088 grCor->Draw("al"); 00089 fGrWave[0]=0; 00090 fGrWave[1]=0; 00091 } 00092 00093 }
Generated on Wed Aug 8 16:20:07 2012 for ARA ROOT Test Bed Software by
