00001
00002 #include "GlastEvent/Hits/SiLayers.h"
00003
00004 #include "GaudiKernel/MsgStream.h"
00005
00006
00007
00008
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
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
00035
00036
00037
00038
00039
00040
00041
00042
00043
00044
00045
00046
00047
00048
00049
00050
00051
00052
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 }