ATLAS Offline Software
Loading...
Searching...
No Matches
python.trfArgClasses.argKeyFloatValueList Class Reference
Inheritance diagram for python.trfArgClasses.argKeyFloatValueList:
Collaboration diagram for python.trfArgClasses.argKeyFloatValueList:

Public Types

typedef HLT::TypeInformation::for_each_type_c< typenameEDMLIST::map, my_functor, my_result<>, my_arg< HLT::TypeInformation::get_cont, CONTAINER > >::type result

Public Member Functions

 __init__ (self, value={}, supressEmptyStrings=True, splitter=',', kvsplitter=":", runarg=True, name=None)
 Dictionary of key value arguments, where the values are floats.
 value (self)
 Argument value getter.
 value (self, value)
 Argument value setter.
 __str__ (self)
 prodsysDescription (self)
 append (self, addme)
 Append a value to the list.
 __repr__ (self)
 Repr conversion.
 isRunarg (self)
 Return runarg status.
 name (self)
 Name getter.
 name (self, value)
 Name setter.
 __eq__ (self, other)
 Comparison is based on value attribute.
 __nq__ (self, other)
 __lt__ (self, other)
 __gt__ (self, other)

Protected Attributes

 _kvsplitter = kvsplitter
 _splitter = splitter
 _supressEmptyStrings = supressEmptyStrings
 _runarg = runarg
 _name = name
 _value = value

Detailed Description

Definition at line 458 of file trfArgClasses.py.

Member Typedef Documentation

◆ result

Definition at line 90 of file EDM_MasterSearch.h.

Constructor & Destructor Documentation

◆ __init__()

python.trfArgClasses.argKeyFloatValueList.__init__ ( self,
value = {},
supressEmptyStrings = True,
splitter = ',',
kvsplitter = ":",
runarg = True,
name = None )

Dictionary of key value arguments, where the values are floats.

Parameters
splitterThe splitter argument determines how the string is split (default by a comma)
kvsplitterThe kvsplitter argument determines how the key and value are split (default by a colon)
valueInitial value to set (note default is an empty dictionary {})
supressEmptyStringsIf empty strings are removed from the list (Can be used to easily set an empty list from the CLI)

Definition at line 465 of file trfArgClasses.py.

465 def __init__(self, value = {}, supressEmptyStrings = True, splitter=',', kvsplitter=":", runarg=True, name=None):
466 self._splitter = splitter
467 self._kvsplitter = kvsplitter
468 self._supressEmptyStrings = supressEmptyStrings
469
470 super(argList, self).__init__(value = value, runarg = runarg, name=name)
471

Member Function Documentation

◆ __eq__()

python.trfArgClasses.argument.__eq__ ( self,
other )
inherited

Comparison is based on value attribute.

Definition at line 161 of file trfArgClasses.py.

161 def __eq__(self,other):
162 return self.value == other.value
163

◆ __gt__()

python.trfArgClasses.argument.__gt__ ( self,
other )
inherited

Definition at line 170 of file trfArgClasses.py.

170 def __gt__(self, other):
171 return self.value > other.value
172

◆ __lt__()

python.trfArgClasses.argument.__lt__ ( self,
other )
inherited

Definition at line 167 of file trfArgClasses.py.

167 def __lt__(self, other):
168 return self.value < other.value
169

◆ __nq__()

python.trfArgClasses.argument.__nq__ ( self,
other )
inherited

Definition at line 164 of file trfArgClasses.py.

164 def __nq__(self, other):
165 return self.value != other.value
166

◆ __repr__()

python.trfArgClasses.argList.__repr__ ( self)
inherited

Repr conversion.

Return a python parsable string

Definition at line 409 of file trfArgClasses.py.

409 def __repr__(self):
410 return '[' + ','.join([ repr(s) for s in self._value ]) + ']'
411
412

◆ __str__()

python.trfArgClasses.argKeyFloatValueList.__str__ ( self)

Definition at line 511 of file trfArgClasses.py.

511 def __str__(self):
512 return str(self._value)
513

◆ append()

python.trfArgClasses.argList.append ( self,
addme )
inherited

Append a value to the list.

Parameters
addmeItem to add

Definition at line 398 of file trfArgClasses.py.

398 def append(self, addme):
399 self._value.append(addme)
400

◆ isRunarg()

python.trfArgClasses.argument.isRunarg ( self)
inherited

Return runarg status.

Definition at line 134 of file trfArgClasses.py.

134 def isRunarg(self):
135 return self._runarg
136

◆ name() [1/2]

python.trfArgClasses.argument.name ( self)
inherited

Name getter.

Reimplemented in python.trfArgClasses.argFile, and python.trfArgClasses.argFile.

Definition at line 139 of file trfArgClasses.py.

139 def name(self):
140 return self._name
141

◆ name() [2/2]

python.trfArgClasses.argument.name ( self,
value )
inherited

Name setter.

Reimplemented in python.trfArgClasses.argFile, and python.trfArgClasses.argFile.

Definition at line 144 of file trfArgClasses.py.

144 def name(self, value):
145 self._name = value
146

◆ prodsysDescription()

python.trfArgClasses.argKeyFloatValueList.prodsysDescription ( self)

Reimplemented from python.trfArgClasses.argList.

Definition at line 515 of file trfArgClasses.py.

515 def prodsysDescription(self):
516 desc = {'type' : 'list', 'listtype' : 'str:float'}
517 return desc
518
519

◆ value() [1/2]

python.trfArgClasses.argKeyFloatValueList.value ( self)

Argument value getter.

Returns
Current value

Reimplemented from python.trfArgClasses.argList.

Definition at line 475 of file trfArgClasses.py.

475 def value(self):
476 return self._value
477

◆ value() [2/2]

python.trfArgClasses.argKeyFloatValueList.value ( self,
value )

Argument value setter.

If we get a dict then set that, otherwise we split a string on the splitter character and then on the kvsplitter into key and value, with the value being converted to float

Exceptions
trfExceptions.TransformArgExceptionException thrown if any dictionary key:value member is not string:int
trfExceptions.TransformArgExceptionException thrown if any int() conversion fails of the kvsplitter is not found

Reimplemented from python.trfArgClasses.argList.

Definition at line 484 of file trfArgClasses.py.

484 def value(self, value):
485 if isinstance(value, dict):
486 for k, v in value.items():
487 if not isinstance(k, str):
488 raise trfExceptions.TransformArgException(trfExit.nameToCode('TRF_ARG_ERROR'),
489 'Illegal key argument type {0} in dictionary for argKeyFloatValueList'.format(k))
490 if not isinstance(v, float):
491 raise trfExceptions.TransformArgException(trfExit.nameToCode('TRF_ARG_ERROR'),
492 'Illegal value argument type {0} in dictionary for argKeyFloatValueList'.format(v))
493 self._value = value
494 elif value is None:
495 self._value = {}
496 return
497 else:
498 self._value = {}
499 try:
500 if self._supressEmptyStrings:
501 kvlist = [ v for v in value.split(self._splitter) if v != '' ]
502 else:
503 kvlist = value.split(self._splitter)
504 for item in kvlist:
505 k, v = item.split(self._kvsplitter, 1)
506 self._value[k] = float(v)
507 except (AttributeError, ValueError):
508 raise trfExceptions.TransformArgException(trfExit.nameToCode('TRF_ARG_CONV_FAIL'),
509 'Failed to convert {0} to a dictionary of string:int values'.format(value))
510

Member Data Documentation

◆ _kvsplitter

python.trfArgClasses.argKeyFloatValueList._kvsplitter = kvsplitter
protected

Definition at line 467 of file trfArgClasses.py.

◆ _name

python.trfArgClasses.argument._name = name
protectedinherited

Definition at line 111 of file trfArgClasses.py.

◆ _runarg

python.trfArgClasses.argument._runarg = runarg
protectedinherited

Definition at line 110 of file trfArgClasses.py.

◆ _splitter

python.trfArgClasses.argList._splitter = splitter
protectedinherited

Definition at line 357 of file trfArgClasses.py.

◆ _supressEmptyStrings

python.trfArgClasses.argList._supressEmptyStrings = supressEmptyStrings
protectedinherited

Definition at line 358 of file trfArgClasses.py.

◆ _value

python.trfArgClasses.argument._value = value
protectedinherited

Definition at line 130 of file trfArgClasses.py.


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