Belle II Software  release-08-01-10
G4Monopole.h
1 /**************************************************************************
2  * basf2 (Belle II Analysis Software Framework) *
3  * Author: The Belle II Collaboration *
4  * *
5  * See git log for contributors and copyright holders. *
6  * This file is licensed under LGPL-3.0, see LICENSE.md. *
7  **************************************************************************/
8 
9 // modified from GEANT4 exoticphysics/monopole/*
10 
11 #pragma once
12 
13 #include <G4ParticleDefinition.hh>
14 #include <globals.hh>
15 
16 #include <CLHEP/Units/SystemOfUnits.h>
17 
18 namespace Belle2 {
24  namespace Monopoles {
33  class G4Monopole : public G4ParticleDefinition {
34  private:
35 
39  virtual ~G4Monopole();
40 
41  public:
42 
52  G4Monopole(const G4String& name,
53  G4double mass,
54  G4double mCharge,
55  G4double eCharge,
56  G4int encoding);
57 
62  G4double MagneticCharge() const;
63 
64  private:
65 
66  G4double magCharge;
67  };
68 
69  } //end Monopoles namespace
70 
72 } //end Belle2 namespace
A class to hold monopole description as a particle.
Definition: G4Monopole.h:33
virtual ~G4Monopole()
Destructor.
Definition: G4Monopole.cc:44
G4double MagneticCharge() const
Returns magnetic charge of the monopole.
Definition: G4Monopole.cc:47
G4double magCharge
Magnetic charge of the monopole, in e+ units.
Definition: G4Monopole.h:66
G4Monopole(const G4String &name, G4double mass, G4double mCharge, G4double eCharge, G4int encoding)
Constructor.
Definition: G4Monopole.cc:21
Abstract base class for different kinds of events.