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 78 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 84 of file config.py.

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

Referenced by GenObject.GenObject.setValue().

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

Definition at line 123 of file config.py.

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

Referenced by config.Service.__setattr__().

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

Definition at line 129 of file config.py.

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

Member Data Documentation

config.Analyzer.class_object

Definition at line 108 of file config.py.

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

Definition at line 81 of file config.py.

config.Analyzer.verbose