CMS 3D CMS Logo

List of all members | Public Member Functions | Public Attributes | Static Public Attributes | Static Private Member Functions | Private Attributes
python.XML2Python.TreeBuilder Class Reference
Inheritance diagram for python.XML2Python.TreeBuilder:

Public Member Functions

def __init__ (self, kwargs)
 
def characters (self, content)
 
def endElement (self, name)
 
def root (self)
 
def startElement (self, name, attrs)
 
def topLevel (self)
 

Public Attributes

 current
 

Static Public Attributes

 non_id_char
 

Static Private Member Functions

def _name_mangle (name)
 

Private Attributes

 _ncDict
 
 _root
 
 _stack
 
 _text_parts
 

Detailed Description

Definition at line 65 of file XML2Python.py.

Constructor & Destructor Documentation

◆ __init__()

def python.XML2Python.TreeBuilder.__init__ (   self,
  kwargs 
)

Definition at line 69 of file XML2Python.py.

69  def __init__ (self, **kwargs):
70  self._stack = []
71  self._text_parts = []
72  self._ncDict = kwargs.get ('nameChangeDict', {})
73  self._root = DataNode (nameChangeDict = self._ncDict)
74  self.current = self._root
75 
def __init__(self, dataset, job_number, job_id, job_name, isDA, isMC, applyBOWS, applyEXTRACOND, extraconditions, runboundary, lumilist, intlumi, maxevents, gt, allFromGT, alignmentDB, alignmentTAG, apeDB, apeTAG, bowDB, bowTAG, vertextype, tracktype, refittertype, ttrhtype, applyruncontrol, ptcut, CMSSW_dir, the_dir)

Member Function Documentation

◆ _name_mangle()

def python.XML2Python.TreeBuilder._name_mangle (   name)
staticprivate

Definition at line 108 of file XML2Python.py.

108  def _name_mangle (name):
109  return TreeBuilder.non_id_char.sub('_', name)
110 
111 

◆ characters()

def python.XML2Python.TreeBuilder.characters (   self,
  content 
)

Definition at line 96 of file XML2Python.py.

References python.XML2Python.TreeBuilder._text_parts, XML2Python.TreeBuilder._text_parts, and mps_setup.append.

96  def characters (self, content):
97  self._text_parts.append(content)
98 

◆ endElement()

def python.XML2Python.TreeBuilder.endElement (   self,
  name 
)

Definition at line 84 of file XML2Python.py.

References python.XML2Python.TreeBuilder._stack, XML2Python.TreeBuilder._stack, python.XML2Python.TreeBuilder._text_parts, XML2Python.TreeBuilder._text_parts, python.XML2Python.TreeBuilder.current, XML2Python.TreeBuilder.current, svgfig.Curve.Samples.current, and nano_mu_digi_cff.strip.

84  def endElement (self, name):
85  text = ''.join (self._text_parts).strip()
86  if text:
87  self.current._data = text
88  if self.current.attributes():
89  obj = self.current
90  else:
91  # a text only node is simply represented by the string
92  obj = text or ''
93  self.current, self._text_parts = self._stack.pop()
94  self.current._add_xml_attr (TreeBuilder._name_mangle(name), obj)
95 

◆ root()

def python.XML2Python.TreeBuilder.root (   self)

Definition at line 99 of file XML2Python.py.

References python.XML2Python.TreeBuilder._root, and XML2Python.TreeBuilder._root.

99  def root (self):
100  return self._root
101 

◆ startElement()

def python.XML2Python.TreeBuilder.startElement (   self,
  name,
  attrs 
)

Definition at line 76 of file XML2Python.py.

References python.XML2Python.DataNode._ncDict, XML2Python.DataNode._ncDict, python.XML2Python.TreeBuilder._ncDict, XML2Python.TreeBuilder._ncDict, python.XML2Python.TreeBuilder._stack, XML2Python.TreeBuilder._stack, python.XML2Python.TreeBuilder._text_parts, XML2Python.TreeBuilder._text_parts, mps_setup.append, python.XML2Python.TreeBuilder.current, XML2Python.TreeBuilder.current, and svgfig.Curve.Samples.current.

76  def startElement (self, name, attrs):
77  self._stack.append( (self.current, self._text_parts))
78  self.current = DataNode (nameChangeDict = self._ncDict)
79  self._text_parts = []
80  # xml attributes --> python attributes
81  for k, v in attrs.items():
82  self.current._add_xml_attr (TreeBuilder._name_mangle(k), v)
83 

◆ topLevel()

def python.XML2Python.TreeBuilder.topLevel (   self)
Returns top level object

Definition at line 102 of file XML2Python.py.

References python.XML2Python.TreeBuilder._root, XML2Python.TreeBuilder._root, and contentValuesCheck.values.

102  def topLevel (self):
103  '''Returns top level object'''
104  return self._root.attributes().values()[0]
105 
106 

Member Data Documentation

◆ _ncDict

python.XML2Python.TreeBuilder._ncDict
private

Definition at line 72 of file XML2Python.py.

Referenced by python.XML2Python.TreeBuilder.startElement().

◆ _root

python.XML2Python.TreeBuilder._root
private

◆ _stack

python.XML2Python.TreeBuilder._stack
private

◆ _text_parts

python.XML2Python.TreeBuilder._text_parts
private

◆ current

python.XML2Python.TreeBuilder.current

◆ non_id_char

python.XML2Python.TreeBuilder.non_id_char
static

Definition at line 67 of file XML2Python.py.