Skip to content
Snippets Groups Projects
Output.py 1.89 KiB
Newer Older
"""Dummy helper object for particle gun properties"""

from __future__ import absolute_import, unicode_literals
from DDSim.Helper.ConfigHelper import ConfigHelper
from DDSim.DD4hepSimulation import outputLevel

Marko Petric's avatar
Marko Petric committed

class Output(ConfigHelper):
  """Configuration for the output levels of DDG4 components"""
Marko Petric's avatar
Marko Petric committed

  def __init__(self):
    super(Output, self).__init__()
Marko Petric's avatar
Marko Petric committed
    self._kernel_EXTRA = {'choices': (1, 2, 3, 4, 5, 6, 7, 'VERBOSE', 'DEBUG',
                                      'INFO', 'WARNING', 'ERROR', 'FATAL', 'ALWAYS')}
    self._kernel = outputLevel('INFO')
Marko Petric's avatar
Marko Petric committed
    self._part_EXTRA = {'choices': (1, 2, 3, 4, 5, 6, 7, 'VERBOSE', 'DEBUG',
                                    'INFO', 'WARNING', 'ERROR', 'FATAL', 'ALWAYS')}
    self._part = outputLevel('INFO')
Marko Petric's avatar
Marko Petric committed
    self._inputStage_EXTRA = {'choices': (1, 2, 3, 4, 5, 6, 7, 'VERBOSE', 'DEBUG',
                                          'INFO', 'WARNING', 'ERROR', 'FATAL', 'ALWAYS')}
    self._inputStage = outputLevel('INFO')
Marko Petric's avatar
Marko Petric committed
    self._random_EXTRA = {'choices': (1, 2, 3, 4, 5, 6, 7, 'VERBOSE', 'DEBUG',
                                      'INFO', 'WARNING', 'ERROR', 'FATAL', 'ALWAYS')}
    self._random = outputLevel('FATAL')
Marko Petric's avatar
Marko Petric committed
  def inputStage(self):
    """Output level for input sources"""
    return self._inputStage
Marko Petric's avatar
Marko Petric committed

  @inputStage.setter
  def inputStage(self, level):
    self._inputStage = outputLevel(level)

  @property
Marko Petric's avatar
Marko Petric committed
  def kernel(self):
    """Output level for Geant4 kernel"""
    return self._kernel
Marko Petric's avatar
Marko Petric committed

  @kernel.setter
  def kernel(self, level):
    self._kernel = outputLevel(level)

  @property
Marko Petric's avatar
Marko Petric committed
  def part(self):
    """Output level for ParticleHandler"""
    return self._part
Marko Petric's avatar
Marko Petric committed

  @part.setter
  def part(self, level):
    self._part = outputLevel(level)
Marko Petric's avatar
Marko Petric committed
  def random(self):
    """Output level for Random Number Generator setup"""
    return self._random
Marko Petric's avatar
Marko Petric committed

  @random.setter
  def random(self, level):
    self._random = outputLevel(level)