Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members  

SiLayers.cpp

Go to the documentation of this file.
00001 
00002 #include "GlastEvent/Hits/SiLayers.h"
00003 
00004 #include "GaudiKernel/MsgStream.h"
00005 //#include "Event/messageManager.h"
00006 //#include "instrument/trackerGeo.h"
00007 
00008 //----------------- SiLayer ------------------
00009 
00010 //################################################
00011 SiLayer::SiLayer(int ilayer, int iview, int ToT):
00012 m_layer(ilayer),m_view(iview),m_ToT(ToT)
00013 //################################################
00014 {
00015         clear();
00016 }
00017 //################################################
00018 void SiLayer::addStrip(int istrip)
00019 //################################################
00020 {
00021 //      if (validStrip(istrip)) 
00022                 m_stripList.push_back(istrip);
00023 }
00024 //################################################
00025 void SiLayer::writeOut() const
00026 //################################################
00027 {
00028       std::cout << "Layer " << m_layer << " xy " << m_view << " tot " << m_ToT <<" nstrips " << m_stripList.size() << " ";
00029       for (int i = 0; i < m_stripList.size();i++) {
00030           std::cout << m_stripList[i] << " ";
00031     }
00032       std::cout <<"\n";
00033 }
00034 //----------------- private -----------------------
00035 /*
00036 //################################################
00037 bool SiLayer::validStrip(int istrip)
00038 //################################################
00039 {
00040         bool valid = true;
00041         
00042         //  check if the strip is physical
00043         int nladders = trackerGeo::nLadders(m_layer,detGeo::makeAxis(m_view));
00044         int iladder = istrip/trackerGeo::ladderNStrips();
00045         if (iladder >= nladders) valid = false;
00046         if (!valid) {
00047                 messageManager::instance()->message(" SiLayer: strip not valid",istrip,"DEBUG");
00048         }
00049         return valid; 
00050 }
00051 */
00052 //----------------- SiLayers -----------------
00053 //################################################
00054 void SiLayers::clear()
00055 //################################################
00056 {
00057         int nlayers = num();
00058         for (int ilayer = 0; ilayer < nlayers; ilayer++) {
00059                 delete m_SiLayersList[ilayer];
00060         }
00061         m_SiLayersList.clear();
00062 }
00063 
00064 //################################################
00065 void SiLayers::ini()
00066 //################################################
00067 {
00068         m_SiLayersList.clear();
00069 }
00070 //################################################
00071 void SiLayers::writeOut() const
00072 //################################################
00073 {
00074         if (m_SiLayersList.size() <=0) return;
00075 
00076         std::cout << " SiLayers " << m_SiLayersList.size() <<"\n";
00077         for (int i = 0; i < m_SiLayersList.size();i++) {
00078                 m_SiLayersList[i]->writeOut();
00079         }
00080 }
00081 //################################################
00082 int SiLayers::numStrips()
00083 //################################################
00084 {
00085         int nStrips = 0;
00086         for (int i = 0; i < m_SiLayersList.size();i++) {
00087                 nStrips += m_SiLayersList[i]->nstrips();
00088         }
00089         return nStrips;
00090 }
00091 //################################################
00092 SiLayer* SiLayers::getSiLayer(int klayer, int iview)
00093 //################################################
00094 {
00095         SiLayer* sd = 0;
00096         int nlayers = m_SiLayersList.size();
00097         for (int ilayer = 0; ilayer < nlayers; ilayer++){
00098                 if (m_SiLayersList[ilayer]->layer() == klayer &&
00099                         m_SiLayersList[ilayer]->view()  == iview) {
00100                         sd = m_SiLayersList[ilayer];
00101                         break;
00102                 }
00103         }
00104         return sd;
00105 }

Generated at Wed Nov 21 12:22:50 2001 by doxygen1.2.3 written by Dimitri van Heesch, © 1997-2000