18     std::vector<int> count_mon;
 
   19     std::vector<int> scount_mon;
 
   21     std::vector<float> tmp_val_mon;
 
   22     std::vector<float> secLayer;
 
   23     std::vector<int> mphi_true;
 
   24     std::vector<int> mphi_false;
 
   25     std::vector<int> scount_phi_false;
 
   26     std::vector<int> scount_phi_true;
 
   27     std::vector<int> scount_eta_false;
 
   28     std::vector<int> scount_eta_true;
 
   76     return StatusCode::FAILURE;
 
   90     int clusCount[33][9], sigclusCount[33][9];
 
   91     unsigned int nEtaClusWidthCnt = 0, nPhiClusWidthCnt = 0;
 
   92     for(
unsigned int kl = 0; 
kl < 33; 
kl++ ) {
 
   93       for(
unsigned int km = 0; 
km < 9; 
km++ ) {
 
   94         clusCount[
kl][
km] = 0;
 
   95         sigclusCount[
kl][
km] = 0;
 
   99     float stripsSum_EA = 0.;
 
  100     float stripsSum_EAtest = -50.;
 
  101     float stripsSum_EC = 0.;
 
  102     float stripsSum_ECtest = -50.;
 
  104     ATH_MSG_DEBUG ( 
" Begin loop over clusters ============================");
 
  108       const std::vector<Identifier>& stripIds = iClus.
rdoList();    
 
  109       float clu_charge = iClus.
charge();
 
  112       ATH_MSG_DEBUG(
" cluster charge = " << clu_charge << 
"\t cluster time = " << clu_time );
 
  114       unsigned int noStrips = stripIds.size();  
 
  121       int chamberType = stationString == 
"CSS" ? 0 : 1;
 
  124       int wireLayer = 
m_idHelperSvc->cscIdHelper().wireLayer(clusId);
 
  125       int measuresPhi = 
m_idHelperSvc->cscIdHelper().measuresPhi(clusId);
 
  132       fill(
"CscClusMonitor",
z,
r);
 
  133       fill(
"CscClusMonitor",
y,
x);
 
  138       int xfac = measuresPhi ? -1 : 1;        
 
  142           stripsSum_EA = stripsSum_EA + noStrips;
 
  144        if(stripsSum_EA > stripsSum_EAtest) {
 
  145           stripsSum_EAtest = stripsSum_EA;
 
  148        if(secLayer < 0. || secLayer == 0.) { 
 
  149           stripsSum_EC = stripsSum_EC + noStrips;
 
  151        if(stripsSum_EC > stripsSum_ECtest) {
 
  152           stripsSum_ECtest = stripsSum_EC;
 
  156       int ns = sectorNo < 0 ? sectorNo*(-1) : sectorNo+16; 
 
  157       int nl = (measuresPhi ? wireLayer : wireLayer+4);  
 
  164       ATH_MSG_DEBUG(
" ns = " << 
ns << 
"\tm_nl = " << nl << 
"\tm_sec = " << sectorNo << 
"\t m_lay= " << wireLayer << 
"\tmPhi = " << measuresPhi);
 
  171       bool cluster_status = ( (
stat == 
"unspoiled")                 || 
 
  172           (
stat == 
"unspoiled with split")                            ||
 
  177       bool eta_cluster_status = cluster_status && ( noStrips > 2 ) && (measuresPhi == 0); 
 
  180       bool phi_cluster_status = cluster_status && ( noStrips > 0 ) && (measuresPhi == 1);
 
  182       ATH_MSG_DEBUG ( 
" ClusterStatus eta = " << eta_cluster_status << 
" ,phi = " << phi_cluster_status);
 
  184           << measuresPhi << 
",wire:" << wireLayer << 
") = " << secLayer << 
" status = "  
  185           << 
stat << 
" #of strips = " << noStrips );
 
  188       if(eta_cluster_status || phi_cluster_status ) {
 
  190         bool found_id = 
true;
 
  191         std::vector <const CscStripPrepData*> stripVec;
 
  192         std::vector <float> fStripIDs;
 
  194         float maxStripCharge = 0., maxStipId = 0.;
 
  195         int sIdx = 0, mxIdx = 0; 
 
  199         fill(
"CscClusMonitor",noStrips_mon, secLayer,clus_phi_mon, clus_eta_mon);
 
  209         for ( std::vector<Identifier>::const_iterator sId = stripIds.begin(); sId != stripIds.end(); ++sId, sIdx++ ) {
 
  213           fStripIDs.push_back(stripid);
 
  215           fill(
"CscClusMonitor",stripid, secLayer);
 
  219             if ( 
icol == 
nullptr ) {
 
  227           bool found_strip = 
false;
 
  228           float maxsampChVal = 0.;
 
  231               found_strip = ( *istrip )->identify() == 
id ; 
 
  233                 stripVec.push_back(*istrip);
 
  234                 std::vector<float> samp_charges = ( *istrip )->sampleCharges();
 
  235                 for(
unsigned int i = 0; 
i < samp_charges.size(); 
i++ ) {
 
  236                   if(samp_charges[
i] > maxsampChVal) maxsampChVal = samp_charges[
i];
 
  238                 if(maxsampChVal > maxStripCharge ) {
 
  239                   maxStripCharge = maxsampChVal; 
 
  246             ATH_MSG_DEBUG ( 
" " << (found_strip? 
"FoundStrip " : 
"NoStripFound ") << 
" with max sampling = " << maxsampChVal);
 
  251          ATH_MSG_DEBUG ( 
" Max Strip charge = " << maxStripCharge  << 
" and strip Id = " << maxStipId << 
" and index = " << mxIdx);
 
  252          float qmax = 0., qleft = 0., qright = 0., qsum = 0.;
 
  255         bool size_ids_coll = (noStrips == stripVec.size() ? true : 
false) ;
 
  257         if(found_id && size_ids_coll ) {
 
  259           std::vector<ICscStripFitter::Result> 
res;
 
  261           bool range_check = (mxIdx > -1) && (mxIdx < 
int(noStrips));
 
  263           ATH_MSG_DEBUG ( 
" Range check = (" << mxIdx  << 
" > -1 ) && (" << mxIdx << 
" < " << noStrips << 
" ) = " << range_check
 
  264               << 
"\t size of vec check " << noStrips << 
" == " << stripVec.size());
 
  270               qleft = 
res[0].charge;
 
  274                   << 
res[0].dwidth << 
"\t status= " << 
res[0].
status << 
"\t chisq= " << 
res[0].chsq);
 
  278             qmax = 
res[1].charge;
 
  282                 << 
res[1].dwidth << 
"\t status= " << 
res[1].
status << 
"\t chisq= " << 
res[1].chsq);
 
  284             if(mxIdx+1 < 
int(noStrips)) {
 
  286               qright = 
res[2].charge;
 
  290                   << 
res[2].dwidth << 
"\t status= " << 
res[2].
status << 
"\t chisq= " << 
res[2].chsq);
 
  298           float kiloele = 1.0e-3; 
 
  330           fill(
"CscClusMonitor",fStripIDs_col, QmaxADC, secLayer, noStrips_mon, QsumADC, clu_time, clu_charge_kiloele, clus_phi, clus_eta, clus_phiSig, clus_etaSig, clus_phiNoise, clus_etaNoise, signal_mon, noise_mon, 
sideA, 
sideC, sideA_phiSig, sideC_phiSig);
 
  339       fill(
"CscClusMonitor",stripsSum_EA_mon, stripsSum_EC_mon);
 
  342     ATH_MSG_DEBUG ( 
" End loop over clusters ============================");
 
  345     fill(
"CscClusMonitor",nPhiClusWidthCnt_mon,nEtaClusWidthCnt_mon);
 
  348     int numeta = 0, numphi = 0;
 
  349     int numetasignal = 0, numphisignal = 0;
 
  352     for(
int kl = 1; 
kl < 33; 
kl++ ) {
 
  355       int eta_hits[4] = {0,0,0,0};
 
  356       bool chamber_empty = 
true;  
 
  357       int sec = 
kl < 17 ? 
kl*(-1) : 
kl; 
 
  358       for(
int km = 1; 
km < 9; 
km++ ) {
 
  359         int lay = (
km > 4 && 
km < 9) ? 
km-4 : 
km;  
 
  360         bool mphi = (
km > 0 && 
km < 5) ? 
true : 
false; 
 
  361         std::string wlay = mphi ? 
"Phi-Layer " : 
"Eta-Layer: ";
 
  366           ATH_MSG_DEBUG (
"sec[" << sec << 
"]\t" << wlay << 
"[" << lay << 
"] = " << monstruct.secLayer.back() << 
"= " << 
"\tNsig = " << 
scount << 
", Ntot = " << 
count);
 
  370               chamber_empty = 
false;
 
  378               chamber_empty = 
false;
 
  382           ATH_MSG_DEBUG ( wlay << 
"Counts sec: [" << 
kl-16 << 
"]\tlayer: [" << 
km << 
"] = " << monstruct.secLayer.back() << 
"\t = " << 
count << 
"\t" << 
scount);
 
  385         monstruct.count_mon.push_back(
count);
 
  386         monstruct.scount_mon.push_back(
scount);
 
  388         monstruct.mphi_true.push_back((
int)mphi && 
count);
 
  389         monstruct.mphi_false.push_back((
int)!(mphi) && 
count);
 
  390         monstruct.scount_phi_true.push_back((
int)mphi && 
count && 
scount);
 
  391         monstruct.scount_phi_false.push_back((
int)mphi && 
count && !
scount);
 
  392         monstruct.scount_eta_true.push_back((
int)!(mphi) && 
count && 
scount);
 
  393         monstruct.scount_eta_false.push_back((
int)!(mphi) && 
count && !
scount);
 
  394         monstruct.secLayer.push_back((sec + 0.2 * (lay - 1) + 0.1));
 
  398       int segNum_new = -999.;
 
  400         std::ostringstream nseglist;
 
  401         std::bitset<4> segNum;
 
  402         for(
unsigned int mm = 0; 
mm < 4; 
mm++) {
 
  403           bool set = (eta_hits[
mm] > 0 ? true : 
false);
 
  404           if(
set) segNum.set(
mm);
 
  405           nseglist << (
set ? 
"1" : 
"0");
 
  407         segNum_new = segNum.to_ulong();
 
  408         ATH_MSG_DEBUG(
"segments= " << nseglist.str() << 
"\t = " << segNum.to_ulong());  
 
  412       fill(
"CscClusMonitor", segNum_mon, sec_mon);
 
  415     ATH_MSG_DEBUG(
" numphi = " << numphi << 
"\t numeta = " << numeta << 
"\tm_sphi = " << numphisignal << 
"\t m_seta = " << numetasignal);
 
  422     auto num_num_noise_mon = 
Monitored::Scalar<int>(
"num_num_noise_mon", (numphi-numphisignal)+(numeta-numetasignal));
 
  426     fill(
"CscClusMonitor",numphi_mon,numeta_mon,numphi_sig_mon,numeta_sig_mon,numphi_numeta_mon,numphi_numeta_sig_mon,num_num_noise_mon,numphi_diff_mon,numeta_diff_mon);
 
  441   fill(
"CscClusMonitor", count_mon, scount_mon, 
count_diff, secLayer, mphi_true, mphi_false, scount_phi_true, scount_phi_false, scount_eta_true, scount_eta_false);