CMS 3D CMS Logo

Public Member Functions | Private Member Functions | Private Attributes

SiPixelTrackerMapCreator Class Reference

#include <SiPixelTrackerMapCreator.h>

List of all members.

Public Member Functions

void create (DQMStore *bei)
 (Documentation under construction).
 SiPixelTrackerMapCreator (std::string themEName, std::string theTKType, bool offlineXMLfile)
 ~SiPixelTrackerMapCreator ()

Private Member Functions

bool exploreBeiStructure (DQMStore *bei)
MonitorElementgetTkMapMe (DQMStore *bei, std::string &me_name, int ndet)
void paintTkMap (MonitorElement *mE)

Private Attributes

SiPixelInformationExtractorinfoExtractor_
std::string mEName
bool offlineXMLfile_
std::string TKType
SiPixelTrackerMaptrackerMap

Detailed Description

Definition at line 14 of file SiPixelTrackerMapCreator.h.


Constructor & Destructor Documentation

SiPixelTrackerMapCreator::SiPixelTrackerMapCreator ( std::string  themEName,
std::string  theTKType,
bool  offlineXMLfile 
)

Definition at line 21 of file SiPixelTrackerMapCreator.cc.

References indexGen::title.

{
//  cout << ACYellow << ACBold 
//       << "[SiPixelTrackerMapCreator::SiPixelTrackerMapCreator()]" 
//       << ACPlain << " ctor" << endl ;
       
  mEName = themEName ;
  TKType = theTKType ;
//cout<<"ME and type for new TrackerMap are: "<<themEName<<" , "<<theTKType<<endl;
  stringstream title ;
  title.str("") ; 
  title << themEName ;
        
  trackerMap      = new SiPixelTrackerMap(title.str());
  if (infoExtractor_ == 0) infoExtractor_  = new SiPixelInformationExtractor(offlineXMLfile_);
}
SiPixelTrackerMapCreator::~SiPixelTrackerMapCreator ( )

Definition at line 43 of file SiPixelTrackerMapCreator.cc.

{
//  if (trackerMap)     delete trackerMap;
//  if (infoExtractor_) delete infoExtractor_;
//  cout << ACYellow << ACBold 
//       << "[SiPixelTrackerMapCreator::~SiPixelTrackerMapCreator()]" 
//       << ACPlain << " dtor" << endl ;
}

Member Function Documentation

void SiPixelTrackerMapCreator::create ( DQMStore bei)

(Documentation under construction).

Definition at line 56 of file SiPixelTrackerMapCreator.cc.

References ACBold, ACCyan, ACPlain, ACRed, gather_cfg::cout, dbtoconf::out, and evf::utils::sid.

Referenced by SiStripActionExecutor::createTkMap().

{
//   cout << ACYellow << ACBold
//      << "[SiPixelTrackerMapCreator::create()] "
//      << ACPlain 
//      << " Creating tracker map for ME: " 
//      << mEName 
//      << endl;

  vector<MonitorElement*> mEList ;
  map<string, int>        mEHash ;
  
  infoExtractor_->selectMEList(bei, mEName, mEList) ;
  infoExtractor_->getMEList(   bei,         mEHash) ;
  
  int nImages = mEHash.size() ;
  
  for(vector<MonitorElement*>::iterator it=mEList.begin(); it!=mEList.end(); it++)
  {
    paintTkMap(*it);
  }

  trackerMap->print(true, TKType);  
//cout<<"Going to create inner frame now! Still in TMC::create"<<endl;
  ofstream innerFrame ;

  innerFrame.open( "rightEmbedded.html", ios::out );
  
  if( !innerFrame )
  {
   cout << ACRed << ACBold
        << "[SiPixelTrackerMapCreator::create()] "
        << ACCyan << ACBold
        << "Could not open rightEmbedded.html"
        << ACPlain
        << endl ;
   return ;
  }
  
  innerFrame << "<html>                                                                    " << "\n"
             << "<!--                                                                      " << "\n"
             << " Author: D. Menasce                                                       " << "\n"
             << " Pixel Tracker Map                                " << "\n"
             << "-->                                                                       " << "\n"
             << "                                                                          " << "\n"
             << "<meta http-equiv='pragma'                                                 " << "\n"
             << "      content   ='no-cache'>                                              " << "\n"
             << "                                                                          " << "\n"
             << "<head>                                                                    " << "\n"
             << " <link   rel  = 'stylesheet'                                              " << "\n"
             << "         type = 'text/css'                                                " << "\n"
             << "         href = 'css_files/wz_dragdrop.css>'                              " << "\n"
             << " <link   rel  = 'stylesheet'                                              " << "\n"
             << "         type = 'text/css'                                                " << "\n"
             << "         href = 'css_files/magnifier.css'>                                " << "\n"
             << " <script type = 'text/javascript'                                         " << "\n"
             << "         src  = 'js_files/magnifier.js'>                                  " << "\n"
             << " </script>                                                                " << "\n"
             << " <script type = 'text/javascript'                                         " << "\n"
             << "         src  = 'js_files/wz_dragdrop.js'>                                " << "\n"
             << " </script>                                                                " << "\n"
             << " <script type = 'text/javascript'                                         " << "\n"
             << "         src  = 'js_files/DMLibrary.js'>                                  " << "\n"
             << " </script>                                                                " << "\n"
             << "                                                                          " << "\n"
             << "</head>                                                                   " << "\n"
             << "                                                                          " << "\n"
             << "<body bgcolor='#414141'>                                                  " << "\n"
             << "                                                                          " << "\n"
             << " <center>                                                                 " << "\n"
             << "                                                                          " << endl ;
  for( int img=1; img<=nImages; img++)
  {
    stringstream sId, sNm ;
    sId.str(""); sId << "binding"   << img ;
    sNm.str(""); sNm << "baseImage" << img ;
    string sid = sId.str() ;
    string snm = sNm.str() ;
    innerFrame << "  <div   id          = 'binding'                                                        " << "\n" 
               << "         name        = '" << sid << "'>                                                 " << "\n" 
               << "   <img  id          = '" << snm << "'                                                  " << "\n" 
               << "         name        = '" << snm << "'                                                  " << "\n" 
               << "         src         = 'images/EmptyPlot.png'                                           " << "\n" 
               << "         alt         = 'picture geometry:800x600'                                       " << "\n" 
               << "         onload      = 'RightEmbedded.innerLoading(\"" << sid << "\",\"" << snm << "\")'" << "\n"
               << "         onclick     = 'RightEmbedded.innerTransport(event)'                            " << "\n"
               << "         onmouseover = 'this.T_SHADOWWIDTH=4;                                           " << "\n"
               << "                        this.T_OPACITY    =70;                                          " << "\n"
               << "                        this.T_FONTCOLOR  =\"#000000\";                                 " << "\n"
               << "                        this.T_WIDTH      =200;                                         " << "\n"
               << "                        return escape(\"Click to send to pan/zoom area\")'              " << "\n"
               << "         width       = '267'                                                            " << "\n"
               << "         height      = '200' />                                                         " << "\n"
               << "  </div>                                                                                " << endl ;
  }
  innerFrame << "                                                                          " << "\n"
             << "</center>                                                                 " << "\n"
             << "                                                                          " << "\n"
             << "<script type = 'text/javascript'                                          " << "\n"
             << "        src  = 'js_files/rightEmbedded.js'>                               " << "\n"
             << "</script>                                                                 " << "\n"
             << "                                                                          " << "\n"
             << "<script type='text/javascript'                                            " << "\n"
             << "        src ='js_files/wz_tooltip.js'>                                    " << "\n"
             << "</script>                                                                 " << "\n"
             << "</html>                                                                   " << endl ;
  innerFrame.close() ; 
//  cout<<"leaving TMC::create."<<endl;                                                                     
}
bool SiPixelTrackerMapCreator::exploreBeiStructure ( DQMStore bei) [private]

Definition at line 179 of file SiPixelTrackerMapCreator.cc.

References ACBlue, ACBold, ACCyan, ACPlain, ACRed, ACReverse, DQMStore::cd(), gather_cfg::cout, DQMStore::getMEs(), DQMStore::getSubdirs(), DQMStore::goUp(), template_SiPixelHistoryDQMService_cfg::histoList, DQMStore::pwd(), and funct::true.

{
  cout << ACCyan << ACBold
       << "[SiPixelTrackerMapCreator::create()] "
       << ACRed << ACReverse 
       << "List of histograms in"
       << ACPlain
       << " "
       << ACBlue << ACBold
       << bei->pwd()
       << ACPlain << endl ;


  vector<string> histoList = bei->getMEs(); 
     
  for (vector<string>::const_iterator it = histoList.begin(); it != histoList.end(); it++) 
  {
   cout << ACCyan << ACBold
        << "[SiPixelTrackerMapCreator::create()] "
        << ACRed << ACReverse 
        << "Histogram:"
        << ACPlain
        << " "
        << *it
        << ACPlain << endl ;
  }

  vector<string> subDirs = bei->getSubdirs();
  
  for (vector<string>::const_iterator it = subDirs.begin(); it != subDirs.end(); it++) 
  {
    bei->cd(*it);
    cout << ACCyan << ACBold
         << "[SiPixelTrackerMapCreator::create()] "
         << ACRed << ACBold 
         << "Moved down to"
         << ACPlain
         << " "
         << ACBlue << ACBold
         << bei->pwd()
         << ACPlain << endl ;
    exploreBeiStructure(bei);
    bei->goUp();
    cout << ACCyan << ACBold
         << "[SiPixelTrackerMapCreator::create()] "
         << ACRed << ACBold 
         << "Now back to"
         << ACPlain
         << " "
         << ACBlue << ACBold
         << bei->pwd()
         << ACPlain << endl ;
  }
  return true ;
}
MonitorElement* SiPixelTrackerMapCreator::getTkMapMe ( DQMStore bei,
std::string &  me_name,
int  ndet 
) [private]
void SiPixelTrackerMapCreator::paintTkMap ( MonitorElement mE) [private]

Definition at line 169 of file SiPixelTrackerMapCreator.cc.

{
//  double sts;
//  int    rval, gval, bval, detId;
//  cout<<"Inside SiPixelTrackerMapCreator::paintTkMap: me= "<<mE->getName()<<endl;
}

Member Data Documentation

Definition at line 33 of file SiPixelTrackerMapCreator.h.

std::string SiPixelTrackerMapCreator::mEName [private]

Definition at line 36 of file SiPixelTrackerMapCreator.h.

Definition at line 38 of file SiPixelTrackerMapCreator.h.

std::string SiPixelTrackerMapCreator::TKType [private]

Definition at line 37 of file SiPixelTrackerMapCreator.h.

Definition at line 34 of file SiPixelTrackerMapCreator.h.