Source code for GenKernel.EventTape

__all__ = ["EventTape"]

from GaugiKernel import Cpp
from GaugiKernel.macros import *
from ROOT import generator
from typing import Optional, Union, List

[docs] class EventTape( Cpp ): def __init__( self, name : str, OutputFile : str, RunNumber : int=0, NumberOfEvents : int=1, OutputLevel : int=0 ): Cpp.__init__(self, generator.EventTape()) self.setProperty("RunNumber" , RunNumber ) self.setProperty("OutputFile" , OutputFile ) self.setProperty("OutputLevel" , OutputLevel )
[docs] def run( self, evt : Optional[Union[int,List[int]]] = None ): if type(evt) is int: evts = list(range(evt)) elif type(evt) is list: evts = [int(e) for e in evt] else: MSG_FATAL(self, "input argument type not supported. Should be int value or a list of ints") if len(evts)==0: MSG_FATAL(self, "No events to process") self.setProperty( "EventNumbers" , evt) self._core.initialize() self._core.execute() self._core.finalize()
def __add__(self, tool): self.push_back(tool) return self
[docs] def push_back( self, tool ): self._core.push_back( tool.core() )