|  | 
| def | content (self, **args) | 
|  | 
| def | default (self, run) | 
|  | 
| def | configure (self) | 
|  | 
| def | pageName (self) | 
|  | 
| def | addPage (self, name, page, **attrs) | 
|  | 
| def | addLink (self, name, alias, **attrs) | 
|  | 
| def | addToPageHeader (self, snippet) | 
|  | 
| def | index (self, **args) | 
|  | 
| def | configureLinks (self) | 
|  | 
| def | override (self) | 
|  | 
| def | header (self, **args) | 
|  | 
| def | navigation (self, **args) | 
|  | 
| def | footer (self, **args) | 
|  | 
Definition at line 22 of file PlotServer.py.
 
◆ addLink()
  
  | 
        
          | def WebPage.WebPage.addLink | ( |  | self, |  
          |  |  |  | name, |  
          |  |  |  | alias, |  
          |  |  | ** | attrs |  
          |  | ) |  |  |  | inherited | 
 
Add a new link to the page tree. Links share page objects with
   other pages through aliasing. This allows using different links
   with different queries to the same page as if they were separate
   pages. For links, highlighting of the current page is disabled
   (if enabled, all links leading to the same page would be
   highlighted).
 
Definition at line 309 of file WebPage.py.
  309     def addLink(self, name, alias, **attrs):
 
  310         """Add a new link to the page tree. Links share page objects with 
  311            other pages through aliasing. This allows using different links 
  312            with different queries to the same page as if they were separate 
  313            pages. For links, highlighting of the current page is disabled 
  314            (if enabled, all links leading to the same page would be 
  316         self.globalConfig.pageList.append(name)
 
  317         self.globalConfig.pageAttributes[name] = dict(attrs)
 
  318         self.globalConfig.pageAttributes[name][
'alias'] = alias
 
 
 
◆ addPage()
  
  | 
        
          | def WebPage.WebPage.addPage | ( |  | self, |  
          |  |  |  | name, |  
          |  |  |  | page, |  
          |  |  | ** | attrs |  
          |  | ) |  |  |  | inherited | 
 
Add a new web page to the page tree. All pages added via addPage
   share the same GlobalConfiguration object.
 
Definition at line 300 of file WebPage.py.
  300     def addPage(self, name, page, **attrs):
 
  301         """Add a new web page to the page tree. All pages added via addPage 
  302            share the same GlobalConfiguration object.""" 
  303         page.globalConfig = self.globalConfig
 
  304         page.pageConfig[
'pageName'] = name
 
  305         self.globalConfig.pageList.append(name)
 
  306         self.globalConfig.pageAttributes[name] = dict(attrs)
 
  307         setattr(self,name,page)   
 
 
 
◆ addToPageHeader()
  
  | 
        
          | def WebPage.WebPage.addToPageHeader | ( |  | self, |  
          |  |  |  | snippet |  
          |  | ) |  |  |  | inherited | 
 
Add a snippet of code to the page header. Use this e.g. to include JavaScript libraries.
 
Definition at line 320 of file WebPage.py.
  320     def addToPageHeader(self, snippet):
 
  321         """Add a snippet of code to the page header. Use this e.g. to include JavaScript libraries.""" 
  322         self.pageConfig[
'pageHeaderSnippets'] += snippet
 
 
 
◆ configure()
  
  | 
        
          | def BeamSpotWebPage.BeamSpotWebPage.configure | ( |  | self | ) |  |  | inherited | 
 
Final configuration of web application after all data is initialized.
 
Reimplemented from WebPage.WebPage.
Definition at line 49 of file BeamSpotWebPage.py.
   50         self.pageConfig[
'cssName'] = self.globalConfig.baseUrl+
'/css/beamspot.css' 
   51         if not self.pageConfig.
get(
'pageTitle',
''):
 
   52             self.pageConfig[
'pageTitle'] = 
'ATLAS Beam Spot Web Page' 
   53         self.pageConfig[
'header'] = header
 
   54         self.pageConfig[
'footer'] = footer
 
   55         WebPage.configure(self)
 
 
 
 
◆ configureLinks()
  
  | 
        
          | def WebPage.WebPage.configureLinks | ( |  | self | ) |  |  | inherited | 
 
Based on configuration data, for each web page create two link entries in pageConfig:
   The first entry has the form url_PAGENAME and contains the complete URL to link to
   a page. The second entry is named href_PAGENAME and contains style information and a
   href= prefix with proper quotation marks in addition to the URL. These link entries
   should be used to generate links in HTML pages with snippets like <a %(href_PAGENAME)s>
   or <a href="%(url_PAGENAME)>. The link entries can only be generated once all
   configuration data is available, ie configureLinks must be called from configure
   and not from __init__.
 
Definition at line 353 of file WebPage.py.
  353     def configureLinks(self):
 
  354         """Based on configuration data, for each web page create two link entries in pageConfig: 
  355            The first entry has the form url_PAGENAME and contains the complete URL to link to 
  356            a page. The second entry is named href_PAGENAME and contains style information and a 
  357            href= prefix with proper quotation marks in addition to the URL. These link entries 
  358            should be used to generate links in HTML pages with snippets like <a %(href_PAGENAME)s> 
  359            or <a href="%(url_PAGENAME)>. The link entries can only be generated once all 
  360            configuration data is available, ie configureLinks must be called from configure 
  361            and not from __init__.""" 
  362         for p 
in self.globalConfig.pageList:
 
  363             page = self.globalConfig.pageAttributes[p].
get(
'alias',p)
 
  364             query = self.globalConfig.pageAttributes[p].
get(
'query',
'')
 
  365             style = self.globalConfig.pageAttributes[p].
get(
'style',
None)
 
  366             self.pageConfig[
'url_'+p] = 
'%s/%s/%s' % (self.globalConfig.baseUrl,page,query)
 
  367             if p==self.pageName():
 
  368                 self.pageConfig[
'href_'+p] = 
'href="%s/%s/%s" class="%s"' % (self.globalConfig.baseUrl,page,query,self.pageConfig[
'css_currentLink'])
 
  371                     self.pageConfig[
'href_'+p] = 
'href="%s/%s/%s" class="%s"' % (self.globalConfig.baseUrl,page,query,style)
 
  373                     self.pageConfig[
'href_'+p] = 
'href="%s/%s/%s"' % (self.globalConfig.baseUrl,page,query)
 
 
 
◆ content()
      
        
          | def PlotServer.PlotServer.content | ( |  | self, | 
        
          |  |  | ** | args | 
        
          |  | ) |  |  | 
      
 
When called without a run number argument in the URL, generate a web page with an error message
 
Reimplemented from WebPage.WebPage.
Definition at line 24 of file PlotServer.py.
   25         """When called without a run number argument in the URL, generate a web page with an error message""" 
   26         return errorMsg % 
'ERROR: You must specify a run number in the URL (e.g. http://..../plots/160879)' 
 
 
 
◆ default()
      
        
          | def PlotServer.PlotServer.default | ( |  | self, | 
        
          |  |  |  | run | 
        
          |  | ) |  |  | 
      
 
Return a summary gif image for the run specified in the URL. If no such image exists (or the run
   doesn't exist), currently returns a zero-length image.
 
Definition at line 28 of file PlotServer.py.
   29         """Return a summary gif image for the run specified in the URL. If no such image exists (or the run 
   30            doesn't exist), currently returns a zero-length image.""" 
   31         cherrypy.response.headers[
'Content-Type'] = 
"image/gif" 
   33             with TaskManager(self.globalConfig[
'taskDb']) 
as taskman:
 
   34                 t = taskman.taskIterDict(
'*',[
'where RUNNR =',DbParam(
int(run)),
"and TASKNAME like 'DB_BEAMSPOT%%' order by UPDATED desc"]).
next()
 
   35             wantedFile = 
'PlotBeamSpot.gif' 
   36             for f 
in t[
'RESULTFILES'].
split():
 
   37                 if f[-len(wantedFile):] == wantedFile: 
break 
   38             path = 
'/'.
join([self.globalConfig[
'jobDir'],t[
'DSNAME'],t[
'TASKNAME'],f])
 
 
 
 
◆ footer()
  
  | 
        
          | def WebPage.WebPage.footer | ( |  | self, |  
          |  |  | ** | args |  
          |  | ) |  |  |  | inherited | 
 
Generate the footer. Default value comes from self.pageConfig['footer'].
 
Definition at line 395 of file WebPage.py.
  396         """Generate the footer. Default value comes from self.pageConfig['footer'].""" 
  397         return self.pageConfig[
'footer'] % self.pageConfig
 
 
 
 
◆ header()
  
  | 
        
          | def WebPage.WebPage.header | ( |  | self, |  
          |  |  | ** | args |  
          |  | ) |  |  |  | inherited | 
 
Generate the page header. Default value comes from self.pageConfig['header'].
 
Definition at line 383 of file WebPage.py.
  384         """Generate the page header. Default value comes from self.pageConfig['header'].""" 
  385         return self.pageConfig[
'header'] % self.pageConfig
 
 
 
 
◆ index()
  
  | 
        
          | def WebPage.WebPage.index | ( |  | self, |  
          |  |  | ** | args |  
          |  | ) |  |  |  | inherited | 
 
Return the complete page.
 
Definition at line 324 of file WebPage.py.
  324     def index(self, **args):
 
  325         """Return the complete page.""" 
  326         if not self.isConfigured:
 
  330             self.pageConfig[
'timeStamp'] = time.strftime(
'%a %b %d %X %Z %Y')
 
  331             contents = self.content(**args)  
 
  333             s = startPage % self.pageConfig
 
  334             s = s + 
htmlDiv(
'header', self.header(**args),
 
  335                             keepEmptyDiv=self.pageConfig[
'keepEmptyHeader'])
 
  336             s = s + 
htmlDiv(
'navigation', self.navigation(**args),
 
  337                             keepEmptyDiv=self.pageConfig[
'keepEmptyNavigation'])
 
  338             s = s + 
htmlDiv(
'content', contents,
 
  339                             keepEmptyDiv=self.pageConfig[
'keepEmptyContent'])
 
  340             s = s + 
htmlDiv(
'footer', self.footer(**args),
 
  341                             keepEmptyDiv=self.pageConfig[
'keepEmptyFooter'])
 
 
 
◆ navigation()
  
  | 
        
          | def WebPage.WebPage.navigation | ( |  | self, |  
          |  |  | ** | args |  
          |  | ) |  |  |  | inherited | 
 
Generate the navigation bar. Default value comes from self.pageConfig['navigation'].
 
Definition at line 387 of file WebPage.py.
  387     def navigation(self, **args):
 
  388         """Generate the navigation bar. Default value comes from self.pageConfig['navigation'].""" 
  389         return self.pageConfig[
'navigation'] % self.pageConfig
 
 
 
◆ override()
  
  | 
        
          | def WebPage.WebPage.override | ( |  | self | ) |  |  | inherited | 
 
Override provides a hook where code to generate or redirect to an alternative
   page can be placed by derived classes. If not override of the normal page is
   desired, override should return None. Otherwise it should either raise an
   appropriate exception or return a string containing the complete alternate page
   to display.
 
Definition at line 375 of file WebPage.py.
  376         """Override provides a hook where code to generate or redirect to an alternative 
  377            page can be placed by derived classes. If not override of the normal page is 
  378            desired, override should return None. Otherwise it should either raise an 
  379            appropriate exception or return a string containing the complete alternate page 
 
 
 
◆ pageName()
  
  | 
        
          | def WebPage.WebPage.pageName | ( |  | self | ) |  |  | inherited | 
 
Short cut to retrieve the name (the last element in the URL)
   of the current page. This works only if the page has been
   added into the page tree using addPage.
 
Definition at line 294 of file WebPage.py.
  295         """Short cut to retrieve the name (the last element in the URL) 
  296            of the current page. This works only if the page has been 
  297            added into the page tree using addPage.""" 
  298         return self.pageConfig[
'pageName']
 
 
 
 
◆ exposed
  
  | 
        
          | PlotServer.PlotServer.exposed |  | static | 
 
 
◆ globalConfig
  
  | 
        
          | WebPage.WebPage.globalConfig |  | inherited | 
 
 
◆ isConfigured
  
  | 
        
          | WebPage.WebPage.isConfigured |  | inherited | 
 
 
◆ pageConfig
  
  | 
        
          | WebPage.WebPage.pageConfig |  | inherited | 
 
 
The documentation for this class was generated from the following file:
 
bool configure(asg::AnaToolHandle< ITrigGlobalEfficiencyCorrectionTool > &tool, ToolHandleArray< IAsgElectronEfficiencyCorrectionTool > &electronEffToolsHandles, ToolHandleArray< IAsgElectronEfficiencyCorrectionTool > &electronSFToolsHandles, ToolHandleArray< CP::IMuonTriggerScaleFactors > &muonToolsHandles, ToolHandleArray< IAsgPhotonEfficiencyCorrectionTool > &photonEffToolsHandles, ToolHandleArray< IAsgPhotonEfficiencyCorrectionTool > &photonSFToolsHandles, const std::string &triggers, const std::map< std::string, std::string > &legsPerTool, unsigned long nToys, bool debug)
def htmlDiv(id, contents='', attr='', keepEmptyDiv=True)