#include <TridModelList.h>
Public Member Functions | |
| TridModelList () | |
| ~TridModelList () | |
| void | Clear () |
| void | AddModel (TridModel *model) |
| void | ClearAssociations () |
| void | AssociateModel (TridModel *model, UInt_t sketchNo) |
| TridModelItr | GetIterator () |
| TridModelItr | GetIterator (Int_t key) |
| UInt_t | GetSketchNumber (TridModel *model) |
| void | GetSketchNumbers (TridModel *model, std::vector< UInt_t > &outVect) |
| TridModel * | GetModelFromSketch (UInt_t sketchNo) |
| UInt_t | GetNumberOfModels () |
Private Types | |
| typedef std::multimap< TridModel *, UInt_t > | tModelToSketches |
| typedef std::map< UInt_t, TridModel * > | tSketchToModel |
| typedef std::multimap< Int_t, TridModel * > | tKeyToModels |
Private Attributes | |
| tModelToSketches | fModelToSketches |
| tSketchToModel | fSketchToModel |
| tKeyToModels | fKeyToModels |
Friends | |
| class | TridModelItr |
|
|
Definition at line 41 of file TridModelList.h. |
|
|
Definition at line 39 of file TridModelList.h. |
|
|
Definition at line 40 of file TridModelList.h. |
|
|
Definition at line 18 of file TridModelList.h. 00018 {};
|
|
|
Definition at line 19 of file TridModelList.h. 00019 { Clear(); };
|
|
|
Definition at line 18 of file TridModelList.cxx. References fKeyToModels, and TridModel::GetSortKey(). Referenced by TridModelMaker::CreateChannelModels(), TridModelMaker::CreateIntersectionModels(), TridModelMaker::CreatePmtModels(), TridModelMaker::CreateShowerModels(), TridModelMaker::CreateSliceModels(), TridModelMaker::CreateStripModels(), and TridModelMaker::CreateTrackModels(). 00019 {
00020 fKeyToModels.insert(std::pair<Int_t,TridModel*>(model->GetSortKey(),model));
00021 }
|
|
||||||||||||
|
Definition at line 23 of file TridModelList.cxx. References fModelToSketches, and fSketchToModel. Referenced by TridUVPage::CreateSketches(), TridPmtPage::CreateSketches(), TridPageSlice::CreateSketches(), TridPageDetector::CreateSketches(), and TridCratePage::CreateSketches(). 00024 {
00025 fSketchToModel[sketchNo] = model;
00026 fModelToSketches.insert(std::pair<TridModel*,UInt_t>(model,sketchNo));
00027 }
|
|
|
Definition at line 5 of file TridModelList.cxx. References fKeyToModels, fModelToSketches, fSketchToModel, GetIterator(), and TridModelItr::Next(). Referenced by TridPage::Clear(), TridUVPage::CreateModels(), TridPmtPage::CreateModels(), TridPageSlice::CreateModels(), TridPageDetector::CreateModels(), TridCratePage::CreateModels(), TridPage::Update(), TridPage::~TridPage(), TridPageDetector::~TridPageDetector(), and TridUVPage::~TridUVPage(). 00006 {
00007 TridModelItr i = GetIterator();
00008 TridModel* model;
00009 while( (model = i.Next()) ) {
00010 delete model;
00011 }
00012
00013 fModelToSketches.clear();
00014 fSketchToModel.clear();
00015 fKeyToModels.clear();
00016 }
|
|
|
Definition at line 29 of file TridModelList.cxx. References fModelToSketches, and fSketchToModel. Referenced by TridUVPage::CreateSketches(), TridPageSlice::CreateSketches(), TridPageDetector::CreateSketches(), and TridCratePage::CreateSketches(). 00030 {
00031 fModelToSketches.clear();
00032 fSketchToModel.clear();
00033 }
|
|
|
Definition at line 40 of file TridModelList.cxx. References TridModelItr. 00041 {
00042 return TridModelItr(*this,key);
00043 }
|
|
|
Definition at line 35 of file TridModelList.cxx. References TridModelItr. Referenced by Clear(), TridModelMaker::CreateChannelModels(), TridModelMaker::CreateIntersectionModels(), TridModelMaker::CreatePmtModels(), TridUVPage::CreateSketches(), TridPmtPage::CreateSketches(), TridPageSlice::CreateSketches(), TridPageDetector::CreateSketches(), TridCratePage::CreateSketches(), TridModelMaker::CreateStripModels(), TridPmtPage::ModifySketches(), and TridPage::ModifySketches(). 00036 {
00037 return TridModelItr(*this);
00038 }
|
|
|
Definition at line 72 of file TridModelList.cxx. References fSketchToModel. Referenced by TridUVPage::ModifySketches(), TridPageSlice::ModifySketches(), TridPageDetector::ModifySketches(), TridPage::ModifySketches(), TridPage::MouseClick(), and TridPage::MouseOver(). 00073 {
00074 tSketchToModel::iterator it = fSketchToModel.find(sketchNo);
00075 if(it == fSketchToModel.end()) return NULL;
00076 return it->second;
00077 }
|
|
|
Definition at line 80 of file TridModelList.cxx. References fKeyToModels. 00081 {
00082 return fKeyToModels.size();
00083 }
|
|
|
Definition at line 45 of file TridModelList.cxx. References fModelToSketches. Referenced by TridPmtPage::ModifySketches(). 00046 {
00047 tModelToSketches::iterator it;
00048 it = fModelToSketches.find(model);
00049 if(it == fModelToSketches.end()) return 0;
00050 return it->second;
00051 }
|
|
||||||||||||
|
Definition at line 54 of file TridModelList.cxx. References fModelToSketches. 00055 {
00056 outVect.clear(); // Clear output
00057
00058 tModelToSketches::iterator it;
00059
00060 // Define a struct to hold the begin/end limits
00061 std::pair<tModelToSketches::iterator,tModelToSketches::iterator> p12;
00062
00063 // Find the begin/end limits matching this model
00064 p12 = fModelToSketches.equal_range(model);
00065
00066 for(it = p12.first; it!=p12.second; it++) {
00067 outVect.push_back(it->second);
00068 }
00069 }
|
|
|
Definition at line 16 of file TridModelList.h. Referenced by GetIterator(). |
|
|
Definition at line 45 of file TridModelList.h. Referenced by AddModel(), Clear(), GetNumberOfModels(), and TridModelItr::TridModelItr(). |
|
|
Definition at line 43 of file TridModelList.h. Referenced by AssociateModel(), Clear(), ClearAssociations(), GetSketchNumber(), and GetSketchNumbers(). |
|
|
Definition at line 44 of file TridModelList.h. Referenced by AssociateModel(), Clear(), ClearAssociations(), and GetModelFromSketch(). |
1.3.9.1