Belle II Software  release-05-02-19
EclPainterFactory.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2015 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Milkail Remnev, Dmitry Matvienko *
7  * *
8  * This software is provided "as is" without any warranty. *
9  ***************************************************************************/
10 
11 #pragma once
12 
13 //ECL
14 #include <ecl/modules/eclDisplay/EclData.h>
15 
16 namespace Belle2 {
22  class EclPainter;
23 
24  namespace ECL {
25  class ECLChannelMapper;
26  }
31  enum EclPainterType {
32  PAINTER_PHI,
43  };
44 
50  private:
52  static const int types_count = PAINTER_SHAPER_2D + 1;
54  static const char* titles[types_count];
55 
60 
61  public:
62 
67  static EclPainter* createPainter(EclPainterType type, EclData* data,
68  ECL::ECLChannelMapper* mapper,
69  EclData::EclSubsystem subsys = EclData::ALL);
73  static const char** getTypeTitles();
77  static int getTypeTitlesCount();
78  };
80 }
Belle2::EclPainterFactory::getTypeTitles
static const char ** getTypeTitles()
Returns array of titles for each EclPainter type.
Definition: EclPainterFactory.cc:84
Belle2::EclPainterType
EclPainterType
Enum for type of EclPainter to create.
Definition: EclPainterFactory.h:39
Belle2::PAINTER_COLLECTOR
@ PAINTER_COLLECTOR
Event count/energy distribution per crate/ECLCollector.
Definition: EclPainterFactory.h:43
Belle2::PAINTER_CHANNEL_2D
@ PAINTER_CHANNEL_2D
(theta_id:phi_id) histogram.
Definition: EclPainterFactory.h:49
Belle2::EclPainterFactory
Class that implements Factory pattern to create objects inherited from EclPainter.
Definition: EclPainterFactory.h:57
Belle2::PAINTER_TIME
@ PAINTER_TIME
Time distribution.
Definition: EclPainterFactory.h:48
Belle2::EclPainter
Painter for EclData, parent class, created with EclPainterFactory.
Definition: EclPainter.h:31
Belle2::EclPainterFactory::getTypeTitlesCount
static int getTypeTitlesCount()
Size of array from getTypeTitles()
Definition: EclPainterFactory.cc:89
Belle2::EclData::EclSubsystem
EclSubsystem
Subsystems of ECL: ALL all subsystems BARR barrel only FORW forward endcap only BACKW backward endcap...
Definition: EclData.h:108
Belle2::EclPainterFactory::createPainter
static EclPainter * createPainter(EclPainterType type, EclData *data, ECL::ECLChannelMapper *mapper, EclData::EclSubsystem subsys=EclData::ALL)
Creates EclPainter of the specified type.
Definition: EclPainterFactory.cc:39
Belle2::EclPainterFactory::titles
static const char * titles[types_count]
Titles for painter types.
Definition: EclPainterFactory.h:62
Belle2::EclPainterFactory::types_count
static const int types_count
Number of painter types.
Definition: EclPainterFactory.h:60
Belle2::PAINTER_PHI
@ PAINTER_PHI
Event count/energy polar angle distribution.
Definition: EclPainterFactory.h:40
Belle2::ECL::ECLChannelMapper
This class provides access to ECL channel map that is either a) Loaded from the database (see ecl/dbo...
Definition: ECLChannelMapper.h:36
Belle2::PAINTER_ENERGY
@ PAINTER_ENERGY
Channel energy distribution.
Definition: EclPainterFactory.h:46
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::EclPainterFactory::EclPainterFactory
EclPainterFactory()
Constructor for EclPainterFactory.
Definition: EclPainterFactory.cc:35
Belle2::PAINTER_SHAPER_2D
@ PAINTER_SHAPER_2D
(shaper:crate) histogram.
Definition: EclPainterFactory.h:50
Belle2::PAINTER_ENERGY_SUM
@ PAINTER_ENERGY_SUM
Event energy distribution.
Definition: EclPainterFactory.h:47
Belle2::PAINTER_1D_THETA
@ PAINTER_1D_THETA
Event count/energy distribution per theta_id.
Definition: EclPainterFactory.h:45
Belle2::EclData
This class contains data for ECLSimHit's and provides several relevant conversion functions for bette...
Definition: EclData.h:41
Belle2::PAINTER_SHAPER
@ PAINTER_SHAPER
Event count/energy distribution per shaperDSP.
Definition: EclPainterFactory.h:42
Belle2::PAINTER_CHANNEL
@ PAINTER_CHANNEL
Event count/energy distribution per channel.
Definition: EclPainterFactory.h:41
Belle2::PAINTER_1D_PHI
@ PAINTER_1D_PHI
Event count/energy distribution per phi_id.
Definition: EclPainterFactory.h:44