Belle II Software  release-05-01-25
VXDHalfShellPar.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2010 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Benjamin Schwenker *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 #pragma once
11 
12 
13 #include <TObject.h>
14 #include <string>
15 #include <map>
16 #include <vector>
17 
18 
19 namespace Belle2 {
29  class VXDHalfShellPar: public TObject {
30 
31  public:
33  VXDHalfShellPar(std::string const& name = "", double shellAngle = 0) : m_name(name), m_shellAngle(shellAngle) {}
35  std::string getName() const { return m_name; }
37  double getShellAngle() const { return m_shellAngle; }
39  void addLadder(int layerID, int ladderID, double phi) { m_layers[layerID].push_back(std::pair<int, double>(ladderID, phi)); }
41  const std::map< int, std::vector<std::pair<int, double>> >& getLayers() const { return m_layers; }
42 
43  private:
45  std::string m_name;
47  double m_shellAngle;
49  std::map< int, std::vector<std::pair<int, double>> > m_layers;
50 
52  };
54 } // end of namespace Belle2
55 
Belle2::VXDHalfShellPar::ClassDef
ClassDef(VXDHalfShellPar, 5)
ClassDef, must be the last term before the closing {}.
Belle2::VXDHalfShellPar::getName
std::string getName() const
get shell name
Definition: VXDHalfShellPar.h:43
Belle2::VXDHalfShellPar::getShellAngle
double getShellAngle() const
get shellAngle
Definition: VXDHalfShellPar.h:45
Belle2::VXDHalfShellPar::VXDHalfShellPar
VXDHalfShellPar(std::string const &name="", double shellAngle=0)
Constructor.
Definition: VXDHalfShellPar.h:41
Belle2::VXDHalfShellPar::addLadder
void addLadder(int layerID, int ladderID, double phi)
add ladder
Definition: VXDHalfShellPar.h:47
Belle2::VXDHalfShellPar::m_name
std::string m_name
Name of half shell.
Definition: VXDHalfShellPar.h:53
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::VXDHalfShellPar::getLayers
const std::map< int, std::vector< std::pair< int, double > > > & getLayers() const
get layers
Definition: VXDHalfShellPar.h:49
Belle2::VXDHalfShellPar::m_layers
std::map< int, std::vector< std::pair< int, double > > > m_layers
Map for keeping ladderID and its phi rotation angle for all layers.
Definition: VXDHalfShellPar.h:57
Belle2::VXDHalfShellPar
The Class for VXD half shell payload.
Definition: VXDHalfShellPar.h:37
Belle2::VXDHalfShellPar::m_shellAngle
double m_shellAngle
Rotation angle of half shell.
Definition: VXDHalfShellPar.h:55