CMS 3D CMS Logo

List of all members | Static Public Member Functions | Private Member Functions | Static Private Attributes
CMSSQ Class Reference

#include <CMSSQ.h>

Inheritance diagram for CMSSQ:

Static Public Member Functions

static CMSSQDefinition (double mass)
 
static CMSSQSQ (double mass)
 

Private Member Functions

 CMSSQ ()
 
 ~CMSSQ ()
 

Static Private Attributes

static CMSSQtheInstance = 0
 

Detailed Description

Definition at line 13 of file CMSSQ.h.

Constructor & Destructor Documentation

◆ CMSSQ()

CMSSQ::CMSSQ ( )
inlineprivate

Definition at line 16 of file CMSSQ.h.

16 {}

◆ ~CMSSQ()

CMSSQ::~CMSSQ ( )
inlineprivate

Definition at line 17 of file CMSSQ.h.

17 {}

Member Function Documentation

◆ Definition()

CMSSQ * CMSSQ::Definition ( double  mass)
static

Definition at line 16 of file CMSSQ.cc.

References EgHLTOffHistBins_cfi::mass, mergeVDriftHistosByStation::name, and theInstance.

Referenced by SQ().

16  {
17  if (theInstance != 0)
18  return theInstance;
19  const G4String name = "sexaq";
20  // search in particle table]
21  G4ParticleTable* pTable = G4ParticleTable::GetParticleTable();
22  G4ParticleDefinition* anInstance = pTable->FindParticle(name);
23  if (anInstance == 0) {
24  // create particle
25  //
26  // Arguments for constructor are as follows
27  // name mass width charge
28  // 2*spin parity C-conjugation
29  // 2*Isospin 2*Isospin3 G-parity
30  // type lepton number baryon number PDG encoding
31  // stable lifetime decay table
32  // shortlived subType anti_encoding
33 
34  anInstance = new G4ParticleDefinition(
35  name, mass, 0, 0.0, 0, +1, 0, 0, 0, 0, "baryon", 0, +2, 1020000020, true, -1.0, nullptr, false, "sexaq");
36  }
37  theInstance = reinterpret_cast<CMSSQ*>(anInstance);
38  return theInstance;
39 }
static CMSSQ * theInstance
Definition: CMSSQ.h:15
Definition: CMSSQ.h:13

◆ SQ()

CMSSQ * CMSSQ::SQ ( double  mass)
static

Definition at line 41 of file CMSSQ.cc.

References Definition(), and EgHLTOffHistBins_cfi::mass.

Referenced by CMSSQInelasticCrossSection::CMSSQInelasticCrossSection(), and CMSSQNeutronAnnih::CMSSQNeutronAnnih().

41  {
42  return Definition(mass * GeV); // will use correct mass if instance exists
43 }
static CMSSQ * Definition(double mass)
Definition: CMSSQ.cc:16

Member Data Documentation

◆ theInstance

CMSSQ * CMSSQ::theInstance = 0
staticprivate

Definition at line 15 of file CMSSQ.h.

Referenced by Definition().