CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Public Attributes
core.TreeAnalyzerNumpy.TreeAnalyzerNumpy Class Reference
Inheritance diagram for core.TreeAnalyzerNumpy.TreeAnalyzerNumpy:

Public Member Functions

def __init__
 
def beginLoop
 
def declareVariables
 
def write
 

Public Attributes

 file
 
 outservicename
 
 tree
 
 treename
 

Detailed Description

Base TreeAnalyzerNumpy, to create flat TTrees.

Check out TestTreeAnalyzer for a concrete example.
IMPORTANT: FOR NOW, CANNOT RUN SEVERAL TreeAnalyzers AT THE SAME TIME!
Anyway, you want only one TTree, don't you?

Definition at line 5 of file TreeAnalyzerNumpy.py.

Constructor & Destructor Documentation

def core.TreeAnalyzerNumpy.TreeAnalyzerNumpy.__init__ (   self,
  cfg_ana,
  cfg_comp,
  looperName 
)

Definition at line 12 of file TreeAnalyzerNumpy.py.

12 
13  def __init__(self, cfg_ana, cfg_comp, looperName):
14  super(TreeAnalyzerNumpy,self).__init__(cfg_ana, cfg_comp, looperName)
15  self.outservicename = getattr(cfg_ana,"outservicename","outputfile")
16  self.treename = getattr(cfg_ana,"treename","tree")
17 

Member Function Documentation

def core.TreeAnalyzerNumpy.TreeAnalyzerNumpy.beginLoop (   self,
  setup 
)

Definition at line 18 of file TreeAnalyzerNumpy.py.

References core.TreeAnalyzerNumpy.TreeAnalyzerNumpy.outservicename.

18 
19  def beginLoop(self, setup) :
20  super(TreeAnalyzerNumpy, self).beginLoop(setup)
21  if self.outservicename in setup.services:
22  print "Using outputfile given in", self.outservicename
23  self.file = setup.services[self.outservicename].file
24  else :
25  fileName = '/'.join([self.dirName,
26  'tree.root'])
27  isCompressed = self.cfg_ana.isCompressed if hasattr(self.cfg_ana,'isCompressed') else 1
28  print 'Compression', isCompressed
29  self.file = TFile( fileName, 'recreate', '', isCompressed )
30  self.file.cd()
31  if self.file.Get(self.treename) :
32  raise RuntimeError, "You are booking two Trees with the same name in the same file"
33  self.tree = Tree(self.treename, self.name)
34  self.tree.setDefaultFloatType(getattr(self.cfg_ana, 'defaultFloatType','D')); # or 'F'
35  self.declareVariables(setup)
static std::string join(char **cmd)
Definition: RemoteFile.cc:18
def core.TreeAnalyzerNumpy.TreeAnalyzerNumpy.declareVariables (   self,
  setup 
)

Definition at line 36 of file TreeAnalyzerNumpy.py.

36 
37  def declareVariables(self,setup):
38  print 'TreeAnalyzerNumpy.declareVariables : overload this function.'
39  pass
def core.TreeAnalyzerNumpy.TreeAnalyzerNumpy.write (   self,
  setup 
)

Definition at line 40 of file TreeAnalyzerNumpy.py.

References core.TreeAnalyzerNumpy.TreeAnalyzerNumpy.outservicename.

40 
41  def write(self, setup):
42  super(TreeAnalyzerNumpy, self).write(setup)
43  if self.outservicename not in setup.services:
44  self.file.Write()
45 

Member Data Documentation

core.TreeAnalyzerNumpy.TreeAnalyzerNumpy.file

Definition at line 22 of file TreeAnalyzerNumpy.py.

core.TreeAnalyzerNumpy.TreeAnalyzerNumpy.outservicename

Definition at line 14 of file TreeAnalyzerNumpy.py.

Referenced by core.TreeAnalyzerNumpy.TreeAnalyzerNumpy.beginLoop(), and core.TreeAnalyzerNumpy.TreeAnalyzerNumpy.write().

core.TreeAnalyzerNumpy.TreeAnalyzerNumpy.tree

Definition at line 32 of file TreeAnalyzerNumpy.py.

Referenced by eventstfile.Events.__iter__(), svgfig.SVG.__str__(), MetTreeProducer.MetTreeProducer.declareVariables(), core.AutoFillTreeProducer.AutoFillTreeProducer.declareVariables(), core.AutoFillTreeProducer.AutoFillTreeProducer.fillTree(), MetTreeProducer.MetTreeProducer.process(), python.cmstools.EventTree.SetAlias(), and eventstfile.Events.to().

core.TreeAnalyzerNumpy.TreeAnalyzerNumpy.treename

Definition at line 15 of file TreeAnalyzerNumpy.py.