CMS 3D CMS Logo

List of all members | Public Member Functions | Public Attributes | Static Public Attributes
config.Analyzer Class Reference
Inheritance diagram for config.Analyzer:
config.CFG

Public Member Functions

def __init__ (self, class_object, instance_label=None, verbose=False, kwargs)
 
def __setattr__ (self, name, value)
 
def build_name (self)
 
def clone (self, kwargs)
 
- Public Member Functions inherited from config.CFG
def __init__ (self, kwargs)
 
def __str__ (self)
 
def clone (self, kwargs)
 

Public Attributes

 class_object
 
 instance_label
 
 name
 
 verbose
 

Static Public Attributes

 num_instance
 

Detailed Description

Base analyzer configuration, see constructor

Definition at line 79 of file config.py.

Constructor & Destructor Documentation

def config.Analyzer.__init__ (   self,
  class_object,
  instance_label = None,
  verbose = False,
  kwargs 
)
One could for example define the analyzer configuration for a
di-muon framework.Analyzer.Analyzer in the following way:

ZMuMuAna = cfg.Analyzer(
"ZMuMuAnalyzer",
pt1 = 20,
pt2 = 20,
iso1 = 0.1,
iso2 = 0.1,
eta1 = 2,
eta2 = 2,
m_min = 0,
m_max = 200
)

Any kinds of keyword arguments can be added.
The name must be present, and must be well chosen, as it will be used
by the Looper to find the module containing the Analyzer class.
This module should be in your PYTHONPATH. If not, modify your python path
accordingly in your script.

Definition at line 85 of file config.py.

85  verbose=False, **kwargs):
86  '''
87  One could for example define the analyzer configuration for a
88  di-muon framework.Analyzer.Analyzer in the following way:
89 
90  ZMuMuAna = cfg.Analyzer(
91  "ZMuMuAnalyzer",
92  pt1 = 20,
93  pt2 = 20,
94  iso1 = 0.1,
95  iso2 = 0.1,
96  eta1 = 2,
97  eta2 = 2,
98  m_min = 0,
99  m_max = 200
100  )
101 
102  Any kinds of keyword arguments can be added.
103  The name must be present, and must be well chosen, as it will be used
104  by the Looper to find the module containing the Analyzer class.
105  This module should be in your PYTHONPATH. If not, modify your python path
106  accordingly in your script.
107  '''
108 
109  self.class_object = class_object
110  self.__class__.num_instance += 1
111  if instance_label is None:
112  instance_label = str(self.__class__.num_instance)
113  self.instance_label = instance_label
114  self.verbose = verbose
115  super(Analyzer, self).__init__(**kwargs)
116 
def __init__(self, class_object, instance_label=None, verbose=False, kwargs)
Definition: config.py:85
#define str(s)

Member Function Documentation

def config.Analyzer.__setattr__ (   self,
  name,
  value 
)
You may decide to copy an existing analyzer and change
its instance_label. In that case, one must stay consistent.

Definition at line 117 of file config.py.

Referenced by GenObject.GenObject.setValue().

117  def __setattr__(self, name, value):
118  '''You may decide to copy an existing analyzer and change
119  its instance_label. In that case, one must stay consistent.'''
120  self.__dict__[name] = value
121  if name == 'instance_label':
122  self.name = self.build_name()
123 
def build_name(self)
Definition: config.py:124
def __setattr__(self, name, value)
Definition: config.py:117
def config.Analyzer.build_name (   self)

Definition at line 124 of file config.py.

References analyzer.Analyzer.instance_label, config.Analyzer.instance_label, and join().

Referenced by config.Service.__setattr__().

124  def build_name(self):
125  class_name = '.'.join([self.class_object.__module__,
126  self.class_object.__name__])
127  name = '_'.join([class_name, self.instance_label])
128  return name
129 
static std::string join(char **cmd)
Definition: RemoteFile.cc:18
def build_name(self)
Definition: config.py:124
def config.Analyzer.clone (   self,
  kwargs 
)

Definition at line 130 of file config.py.

130  def clone(self, **kwargs):
131  other = super(Analyzer, self).clone(**kwargs)
132  if 'class_object' in kwargs and 'name' not in kwargs:
133  other.name = other.build_name()
134  return other
135 
def clone(self, kwargs)
Definition: config.py:130

Member Data Documentation

config.Analyzer.class_object

Definition at line 109 of file config.py.

config.Analyzer.instance_label
config.Analyzer.name
config.Analyzer.num_instance
static

Definition at line 82 of file config.py.

config.Analyzer.verbose