Main Page   Class Hierarchy   Compound List   File List   Compound Members   File Members   Related Pages  

CalADCLogs.cpp

Go to the documentation of this file.
00001 
00002 #include "CalRecon/CalADCLogs.h"
00003 //######################################
00004 CalADCLog::CalADCLog(int ilayer, int iview, int icolumn)
00005 :CalLogID(ilayer,iview,icolumn)
00006 //######################################
00007 {
00008         clear();
00009 }
00010 
00011 //######################################
00012 CalADCLog::CalADCLog(int ilayer, int iview, int icolumn, idents::ModuleId mod)
00013 :CalLogID(ilayer,iview,icolumn, mod)
00014 //######################################
00015 {
00016         clear();
00017 }
00018 //######################################
00019 void CalADCLog::clear()
00020 //######################################
00021 {
00022         for (int iside = 0 ; iside < CALNSIDES; iside++) {
00023                 for (int irange = 0; irange < CALNRANGES ; irange++) 
00024                         m_ADC[iside][irange] = 0.;
00025         }
00026 }
00027 //################################################
00028 void CalADCLog::writeOut() const
00029 //################################################
00030 {
00031 
00032         std::cout << logID() << " " << modId() << layer() << view() << column() << " ";
00033         std::cout << " PED ";
00034         for (int iside = 0; iside < CALNSIDES; iside++) {
00035                 for (int irange = 0; irange < CALNRANGES; irange++) 
00036                         std::cout << m_ADC[iside][irange]<< " ";
00037         }
00038         std::cout<<"\n";
00039 }
00040 //--------------------------------------------------
00041 //######################################
00042 void CalADCLogs::ini(int nModX, int nModY, int nLogs, int nLayers)
00043 //######################################
00044 {
00045         for (int iy = 1; iy <= nModY; iy++){            
00046                 for (int ix = 1; ix <= nModX; ix++){
00047                         idents::ModuleId mod(ix,iy);
00048                         for (int ilayer = 0; ilayer < nLayers; ilayer++) {
00049                                 for (int ilog = 0; ilog < nLogs; ilog++) {
00050                                         m_List.push_back(new CalADCLog(ilayer,CalDetGeo::Y,ilog,mod));
00051                                         m_List.push_back(new CalADCLog(ilayer,CalDetGeo::X,ilog,mod));
00052                                 }
00053                         }
00054                 }
00055         }
00056 }
00057 //######################################
00058 CalADCLogs::~CalADCLogs()
00059 //######################################
00060 {
00061         for (int ilog = 0; ilog < m_List.size(); ilog++) delete m_List[ilog];
00062 }
00063 //######################################
00064 void CalADCLogs::clear()
00065 //######################################
00066 {
00067         for (int ilog = 0; ilog < m_List.size(); ilog++) {
00068                 m_List[ilog]->clear();
00069         }
00070 }
00071 //######################################
00072 CalADCLog* CalADCLogs::getLogID(int logID) const
00073 //######################################
00074 {
00075         int jlog = -1;
00076         for (int ilog = 0; ilog < m_List.size(); ilog++) {
00077                 if (m_List[ilog]->logID() == logID) {
00078                         jlog  = ilog;
00079                         break;
00080                 }
00081         }
00082         return m_List[jlog];
00083 }
00084 
00085 //######################################
00086 void CalADCLogs::writeOut() const
00087 //######################################
00088 {
00089         if (m_List.size()<=0) return;
00090 
00091 
00092         std::cout << " CalADCLogs " << m_List.size() <<"\n";
00093         for (int i = 0; i < m_List.size();i++) {
00094                 Log(i)->writeOut();
00095         }
00096 }

Generated on Thu Nov 29 16:38:48 2001 by doxygen1.2.12 written by Dimitri van Heesch, © 1997-2001