Belle II Software development
ExpertLevelRefiner Class Reference
Inheritance diagram for ExpertLevelRefiner:
Refiner

Public Member Functions

 __init__ (self, wrapped_refiner, above_expert_level=None, below_expert_level=None)
 
 refine (self, harvesting_module, crops, *args, **kwds)
 
 __get__ (self, harvesting_module, cls=None)
 
 __call__ (self, harvesting_module, crops=None, *args, **kwds)
 

Public Attributes

 wrapped_refiner = wrapped_refiner
 cached value of the wrapped refiner
 
 above_expert_level = above_expert_level
 cached value of the upper range of the expert level
 
 below_expert_level = below_expert_level
 cached value of the lower range of the expert level
 
 refiner_function = refiner_function
 cached copy of the instance's refiner function
 

Detailed Description

Refiner for expert-level categorization

Definition at line 1107 of file refiners.py.

Constructor & Destructor Documentation

◆ __init__()

__init__ ( self,
wrapped_refiner,
above_expert_level = None,
below_expert_level = None )
Constructor for this refiner

Definition at line 1110 of file refiners.py.

1110 def __init__(self, wrapped_refiner, above_expert_level=None, below_expert_level=None):
1111 """Constructor for this refiner"""
1112
1113 ## cached value of the wrapped refiner
1114 self.wrapped_refiner = wrapped_refiner
1115 ## cached value of the upper range of the expert level
1116 self.above_expert_level = above_expert_level
1117 ## cached value of the lower range of the expert level
1118 self.below_expert_level = below_expert_level
1119

Member Function Documentation

◆ __call__()

__call__ ( self,
harvesting_module,
crops = None,
* args,
** kwds )
inherited
implementation of the function-call of the Refiner instance
     r = Refiner()
     r(harvester) # decoration
     r(harvester, crops, args, keywords) # refinement

Definition at line 55 of file refiners.py.

55 def __call__(self, harvesting_module, crops=None, *args, **kwds):
56 """implementation of the function-call of the Refiner instance
57 r = Refiner()
58 r(harvester) # decoration
59 r(harvester, crops, args, keywords) # refinement
60 """
61 if crops is None:
62 # Decoration mode
63 harvesting_module.refiners.append(self)
64 return harvesting_module
65 else:
66 # Refining mode
67 return self.refine(harvesting_module, crops, *args, **kwds)
68

◆ __get__()

__get__ ( self,
harvesting_module,
cls = None )
inherited
Getter of the Refiner instance

Definition at line 42 of file refiners.py.

42 def __get__(self, harvesting_module, cls=None):
43 """Getter of the Refiner instance"""
44 if harvesting_module is None:
45 # Class access
46 return self
47 else:
48 # Instance access
49 refine = self.refine
50
51 def bound_call(*args, **kwds):
52 return refine(harvesting_module, *args, **kwds)
53 return bound_call
54

◆ refine()

refine ( self,
harvesting_module,
crops,
* args,
** kwds )
Process the expert-level categorization

Reimplemented from Refiner.

Definition at line 1120 of file refiners.py.

1120 def refine(self, harvesting_module, crops, *args, **kwds):
1121 """Process the expert-level categorization"""
1122
1123 above_expert_level = self.above_expert_level
1124 below_expert_level = self.below_expert_level
1125
1126 proceed = True
1127 if above_expert_level is not None:
1128 proceed = proceed and harvesting_module.expert_level > above_expert_level
1129
1130 if below_expert_level is not None:
1131 proceed = proceed and harvesting_module.expert_level < below_expert_level
1132
1133 if proceed:
1134 self.wrapped_refiner(harvesting_module, crops, *args, **kwds)
1135
1136
1137# Meta refiner decorators

Member Data Documentation

◆ above_expert_level

above_expert_level = above_expert_level

cached value of the upper range of the expert level

Definition at line 1116 of file refiners.py.

◆ below_expert_level

below_expert_level = below_expert_level

cached value of the lower range of the expert level

Definition at line 1118 of file refiners.py.

◆ refiner_function

refiner_function = refiner_function
inherited

cached copy of the instance's refiner function

Definition at line 40 of file refiners.py.

◆ wrapped_refiner

wrapped_refiner = wrapped_refiner

cached value of the wrapped refiner

Definition at line 1114 of file refiners.py.


The documentation for this class was generated from the following file: