Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

TridHistoPage.cxx

Go to the documentation of this file.
00001 
00002 // Root stuff:
00003 #include <TStyle.h>
00004 #include <TColor.h>
00005 #include <TROOT.h>
00006 #include <TGeoManager.h>
00007 
00008 #include "TridHistoPage.h"
00009 #include "TridHistoGLFrame.h"
00010 #include "TridSketches.h"
00011 #include "TridModelCrate.h"
00012 #include "TridControl.h"
00013 
00014 #include "Midad/Base/PageProxy.h"
00015 #include "Midad/Gui/GuiBox.h"
00016 #include "Midad/Gui/GuiCanvas.h"
00017 #include "Midad/Gui/GuiMainWindow.h"
00018 #include "Midad/Base/Mint.h"
00019 
00020 #include <DataUtil/GetCandidate.h>
00021 #include <JobControl/JobC.h>
00022 
00023 #include <sigc++/sigc++.h>
00024 #include <sigc++/class_slot.h>
00025 
00026 #include "MessageService/MsgService.h"
00027 #include "MinosObjectMap/MomNavigator.h"
00028 #include "Plex/PlexHandle.h"
00029 #include "Plex/PlexSEIdAltL.h"
00030 #include "Plex/PlexStripEndId.h"
00031 #include "Plex/PlexPixelSpotId.h"
00032 
00033 #include "CandData/CandRecord.h"
00034 #include "CandDigit/CandDigitListHandle.h"
00035 #include "CandDigit/CandDigitHandle.h"
00036 #include "RawData/RawChannelId.h"
00037 
00038 using namespace SigC;
00039 
00040 
00041 CVSID("$Id: TridHistoPage.cxx,v 1.10 2005/05/19 17:47:35 tagg Exp $");
00042 
00043 // We don't use this here because we are just a base class.  But, any
00044 // subclass should have a version like it.
00045 static PageProxy<TridHistoPage>      gsTridHistoPageProxy("TridColorHisto");
00046 static PageProxy<TridTransHistoPage> gsTridTransHistoPageProxy("TridTransHisto");
00047 
00048 
00049 TridHistoPage::TridHistoPage()
00050   :    TridPage(),
00051        fHist(0),
00052        fModes(0)
00053 { 
00054   // Default view.
00055   fViewModesSupported = kViewNone;
00056   fViewMode = kView2D;
00057   fWindowName = "TridColorHisto";
00058   fCreateHistograms = false;
00059 }
00060 
00061 TridHistoPage::~TridHistoPage()
00062 { 
00063   if(fModes) delete fModes;
00064 }
00065 
00066 TObject* TridHistoPage::Init(Mint* mint, PageDisplay* pageDisplay, GuiBox& box)
00067 { 
00068   MSG("TriD",Msg::kDebug) << "TridHistoPage: Init()" << endl;
00069   TridPage::Init(mint, pageDisplay, box);  
00070   
00071   // Get a histogram from the Control.
00072   fHist = fTridControl->GetColorHistogram();
00073 
00074   // Set up menus.
00075   fModes = new GuiToggledSubMenu(TridControl::kColorAsChargePE);
00076   fModes->CreateMenu(fOptionsMenu,"Color Modes");
00077   for(int i=0;i<TridControl::kNumColorModes;i++) {
00078     fModes->AddItem(kColorModeNames[i],i);
00079   }
00080   fModes->Connect(slot_class(*TridControl::Instance(fPageDisplay),&TridControl::ChangeColorMode));
00081 
00082   return NULL;
00083 }
00084 
00085 TridGLFrame* TridHistoPage::CreateNewGLFrame( TridPage::ViewMode_t /*mode*/ )
00086 {
00087   // Ignore mode.
00088   return new TridHistoGLFrame(this,*fGuiBox,NULL,fTridControl);
00089 }
00090 
00091 
00092 void TridHistoPage::CreateModels() 
00093 {
00094   fHist = fTridControl->GetColorHistogram();
00095   if(fHist) {
00096     dynamic_cast<TridHistoGLFrame*>(fGLFrame.get())->SetHistogram(fHist);
00097   }
00098 }
00099 
00100 
00102 
00103 TridTransHistoPage::TridTransHistoPage() :
00104   TridHistoPage()
00105 { 
00106   fWindowName = "TridTransHisto";
00107 }
00108 
00109 TObject* TridTransHistoPage::Init(Mint* mint, PageDisplay* pageDisplay, GuiBox& box)
00110 {
00111   MSG("TriD",Msg::kDebug) << "TridTransHistoPage: Init()" << endl;
00112   TridPage::Init(mint, pageDisplay, box);  
00113   
00114   // Get a histogram from the Control.
00115   fHist = fTridControl->GetTransHistogram();
00116 
00117   // Menu.
00118   fModes = new GuiToggledSubMenu(TridControl::kTransConstant);
00119 
00120   fModes->CreateMenu(fOptionsMenu,"Trans Modes");
00121   for(int i=0;i<TridControl::kNumTransModes;i++) {
00122     fModes->AddItem(kTransModeNames[i],i);
00123   }
00124   fModes->Connect(slot_class(*TridControl::Instance(fPageDisplay),&TridControl::ChangeTransMode));
00125 
00126   return NULL;
00127 }
00128 
00129 TridGLFrame* TridTransHistoPage::CreateNewGLFrame( TridPage::ViewMode_t /*mode*/ )
00130 {
00131   return new TridHistoGLFrame(this,*fGuiBox,NULL,fTridControl, TridHistoGLFrame::kTrans);
00132 }
00133 
00134 
00135 void TridTransHistoPage::CreateModels() 
00136 {
00137   fHist = fTridControl->GetTransHistogram();
00138   if(fHist) {
00139     dynamic_cast<TridHistoGLFrame*>(fGLFrame.get())->SetHistogram(fHist);
00140   }
00141 }
00142 

Generated on Mon Feb 15 11:07:44 2010 for loon by  doxygen 1.3.9.1