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

CalLogID.cpp

Go to the documentation of this file.
00001 
00002 #include "CalRecon/CalLogID.h"
00003 //#######################################
00004 CalLogID::CalLogID(int ilayer, CalDetGeo::axis v, int icolumn, idents::ModuleId mod)
00005 //#######################################
00006 :m_modId(mod)
00007 {
00008         ini();
00009         m_layer = ilayer;
00010         m_view = v;
00011         m_column = icolumn;
00012 
00013         m_logID = CalLogID::ID(ilayer, m_view, icolumn, mod);
00014 
00015 }
00016 //#######################################
00017 CalLogID::CalLogID(int ilayer, int iview, int icolumn, idents::ModuleId mod)
00018 //#######################################
00019 :m_modId(mod)
00020 {
00021         ini();
00022         m_layer = ilayer;
00023         m_view = CalDetGeo::makeAxis(iview);
00024         m_column = icolumn;
00025 
00026         m_logID = CalLogID::ID(ilayer, m_view, icolumn, mod);
00027 
00028 }
00029 //#######################################
00030 CalLogID::CalLogID(int ilayer, int iview, int icolumn):m_modId(0)
00031 //#######################################
00032 {
00033         ini();
00034         m_layer = ilayer;
00035         m_view = CalDetGeo::makeAxis(iview);
00036         m_column = icolumn;
00037 
00038         m_logID = CalLogID::ID(ilayer, m_view, icolumn);
00039 }
00040 //#######################################
00041 CalLogID::CalLogID(int ilayer, CalDetGeo::axis v, int icolumn):m_modId(0)
00042 //#######################################
00043 {
00044         ini();
00045         m_layer = ilayer;
00046         m_view = v;
00047         m_column = icolumn;
00048 
00049         m_logID = CalLogID::ID(ilayer, m_view, icolumn);
00050 }
00051 //#######################################
00052 int CalLogID::ID(int ilayer, CalDetGeo::axis v, int icolumn, idents::ModuleId mod)
00053 //#######################################
00054 {
00055         int id = ID(ilayer,v,icolumn)+10000*mod;
00056         return id;
00057 }
00058 //#######################################
00059 int CalLogID::ID(int ilayer, CalDetGeo::axis v, int icolumn)
00060 //#######################################
00061 {
00062 //      int ifactor = (v == detGeo::X? 1 : 0);
00063         int ID = 1000*ilayer + 100*v + icolumn;
00064 //      int idLog = 2*nLogs*(3-ilayer)+ifactor*nLogs + icolumn;
00065         return ID;
00066 }
00067 //#######################################
00068 idents::ModuleId CalLogID::modId(int logID)
00069 //#######################################
00070 {
00071         idents::ModuleId mod (logID/10000);
00072         return mod;
00073 }
00074 //#######################################
00075 int CalLogID::layer(int logID)
00076 //#######################################
00077 {
00078         int i = logID/10000;
00079         int ilayer = logID/1000 - 10*i;
00080         return ilayer;
00081 }
00082 //#######################################
00083 CalDetGeo::axis CalLogID::view(int logID)
00084 //#######################################
00085 {
00086         int i = logID/1000;
00087         int iview = (logID/100)-10*i;
00088         CalDetGeo::axis v = CalDetGeo::X;
00089         if (iview == 1) v = CalDetGeo::Y;
00090         return v;
00091 }
00092 //#######################################
00093 int CalLogID::column(int logID)
00094 //#######################################
00095 {
00096         int i = logID/100;
00097         int icolumn = logID-100*i;
00098         return icolumn;
00099 }
00100 //------------ private ------------------
00101 //#######################################
00102 void CalLogID::ini()
00103 //#######################################
00104 {
00105         m_layer = -1;
00106         m_view = CalDetGeo::PASSIVE;
00107         m_column = -1;
00108         m_logID = -1;
00109 }

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