![]() |
Belle II Software prerelease-10-00-00a
|
Public Member Functions | |
__init__ (self, name, simple, withArgument=None, array=True) | |
add_member (self, name, arguments=None, print_callback=None, display=None) | |
print (self) | |
print_untested (self) | |
Public Attributes | |
name = name | |
class name of the datastore object | |
array = array | |
if True we print a StoreArray, otherwise a single StoreObjPtr | |
list | object_members = [] |
list of object members to call and print their results | |
Protected Member Functions | |
_printObj (self, obj, index=None) | |
_printResult (self, result, depth=0, weight=None) | |
Class to print contents of a StoreObjPtr or StoreArray. This class is intended to print the contents of dataobjects to the standard output to monitor changes to the contents among versions. For example: >>> printer = DataStorePrinter("MCParticle", ["getVertex"], {"hasStatus": [1, 2, 4]}) >>> printer.print() will loop over all MCParticle instances in the MCParticles StoreArray and print something like :: MCParticle#0 getVertex(): (0,0,0) hasStatus(1): True hasStatus(2): False hasStatus(4): False for each MCparticle
Definition at line 42 of file datastoreprinter.py.
__init__ | ( | self, | |
name, | |||
simple, | |||
withArgument = None, | |||
array = True ) |
Initialize Args: name (str): class name of the DataStore object simple (list): list of member names to print which do not need any additional arguments withArgument (dict or None): dictionary of member names and a list of all argument combinations to call them. array (bool): if True we print a StoreArray, otherwise a single StoreObjPtr
Definition at line 66 of file datastoreprinter.py.
|
protected |
Print all defined members for each object with given index. If we print a StoreObjPtr then index is None and this function is called once. If we print StoreArrays this function is called once for each entry in the array with index set to the position in the array
Definition at line 164 of file datastoreprinter.py.
|
protected |
Print the result of calling a certain member. As we want the test to be independent of memory we have to be a bit careful how to not just print() but check whether the object is maybe a pointer to another DataStore object or if it is a TObject with implements Print(). Also, call recursively std::pair Args: result: object to print depth (int): depth for recursive printing, controls the level of indent weight (float or None): weight to print in addition to object, only used for relations
Definition at line 215 of file datastoreprinter.py.
add_member | ( | self, | |
name, | |||
arguments = None, | |||
print_callback = None, | |||
display = None ) |
Add an additional member to be printed. Args: name (str): name of the member arguments (list or callable): arguments to pass to the member when calling it If this is a callable object then the function is called with the object as first argument and the member name to be tested as second argument. The function is supposed to return the list of arguments to pass to the member when calling. Possible return values for the callable are: * a `list` of arguments to be passed to the member. An empty `list` means to call the member with no arguments. * a `tuple` of `lists <list>` to call the member once for each list of arguments in the tuple * `None` or an empty tuple to not call the member at all print_callback (function or None): if not None a function to print the result of the member call. The function will be called with the arguments (name, arguments, result) and should print the result on stdout without any additional information. display (str or None): display string to use when printing member call info instead of function name + arguments. If it is not given the default output will be ``{membername}({arguments}):`` followed by the result.
Definition at line 105 of file datastoreprinter.py.
( | self | ) |
Print all the objects currently existing
Definition at line 138 of file datastoreprinter.py.
print_untested | ( | self | ) |
Print all the public member functions we will not test
Definition at line 155 of file datastoreprinter.py.
if True we print a StoreArray, otherwise a single StoreObjPtr
Definition at line 81 of file datastoreprinter.py.
name = name |
class name of the datastore object
Definition at line 79 of file datastoreprinter.py.
list object_members = [] |
list of object members to call and print their results
Definition at line 83 of file datastoreprinter.py.