source: trunk/source/processes/hadronic/models/chiral_inv_phase_space/body/include/G4QDecayChan.hh @ 1340

Last change on this file since 1340 was 1340, checked in by garnier, 14 years ago

update ti head

File size: 4.9 KB
Line 
1//
2// ********************************************************************
3// * License and Disclaimer                                           *
4// *                                                                  *
5// * The  Geant4 software  is  copyright of the Copyright Holders  of *
6// * the Geant4 Collaboration.  It is provided  under  the terms  and *
7// * conditions of the Geant4 Software License,  included in the file *
8// * LICENSE and available at  http://cern.ch/geant4/license .  These *
9// * include a list of copyright holders.                             *
10// *                                                                  *
11// * Neither the authors of this software system, nor their employing *
12// * institutes,nor the agencies providing financial support for this *
13// * work  make  any representation or  warranty, express or implied, *
14// * regarding  this  software system or assume any liability for its *
15// * use.  Please see the license in the file  LICENSE  and URL above *
16// * for the full disclaimer and the limitation of liability.         *
17// *                                                                  *
18// * This  code  implementation is the result of  the  scientific and *
19// * technical work of the GEANT4 collaboration.                      *
20// * By using,  copying,  modifying or  distributing the software (or *
21// * any work based  on the software)  you  agree  to acknowledge its *
22// * use  in  resulting  scientific  publications,  and indicate your *
23// * acceptance of all terms of the Geant4 Software license.          *
24// ********************************************************************
25//
26//
27// $Id: G4QDecayChan.hh,v 1.24 2009/02/23 09:49:24 mkossov Exp $
28// GEANT4 tag $Name: hadr-chips-V09-03-08 $
29//
30//      ---------------- G4QDecayChan ----------------
31//             by Mikhail Kossov, Sept 1999.
32//  class header for Decay Channel definition in CHIPS Model
33// ------------------------------------------------------------
34// Short description: In the CHIPS World the particles (G4QParticle)
35// are defined. For unstable particles there is a G4QDecayChannelVector
36// which describes different channels of decay for the particular
37// particle. So the G4QDecayChannel class is the class for the description
38// of such a decay channel in two or three particles (the secondaries can
39// be unstable too and have firther decay).
40// -------------------------------------------------------------------
41
42#ifndef G4QDecayChan_h
43#define G4QDecayChan_h 1
44
45#include <iostream>
46#include "globals.hh"
47#include "G4QPDGCodeVector.hh"
48
49class G4QDecayChan
50{
51public:
52  // Constructors
53  G4QDecayChan();                                                    // Default Constructor
54  //G4QDecayChan(G4QPDGCodeVector secHadr, G4double probLimit = 1.); // General Constructor
55  G4QDecayChan(G4double pLev, G4int PDG1, G4int PDG2, G4int PDG3=0); // DetailedConstructor
56  G4QDecayChan(const G4QDecayChan& right);                       // Copy ByValueConstructor
57  G4QDecayChan(G4QDecayChan* right);                           // Copy ByPointerConstructor
58
59  ~G4QDecayChan();                                                   // Public Destructor
60
61  // Operators
62  const G4QDecayChan& operator=(const G4QDecayChan& right);
63  G4bool               operator==(const G4QDecayChan& rhs) const;
64  G4bool               operator!=(const G4QDecayChan& rhs) const;
65
66  // Selectors
67  G4double         GetDecayChanLimit() const;   // Get a Decay Channel Probability Limit
68  G4double         GetMinMass() const;          // Get a Minimum Mass for the Decay Channel
69  G4QPDGCodeVector GetVecOfSecHadrons();        // Get a Vector of secondary PDG-particles
70
71  // Modifiers
72  void SetDecayChanLimit(G4double newDecChanLim);// Set a Decay Channel Probability Limit
73  void SetMinMass(G4double newMinMass);          // Set a Minimum Mass for the DecayChannel
74  void SetVecOfSecHadrons(G4QPDGCodeVector hadV);// Set a Vector of secondary PDG-particles
75
76  //private:
77  // Encapsulated functions
78
79private:
80  // the Body
81  G4double aDecayChanLimit;
82  G4double theMinMass;
83  G4QPDGCodeVector aVecOfSecHadrons;
84};
85
86// Not member operators
87std::ostream&   operator<<(std::ostream& lhs, G4QDecayChan& rhs);
88//----------------------------------------------------------------------------------------
89
90inline G4bool G4QDecayChan::operator==(const G4QDecayChan& rhs) const {return this==&rhs;}
91inline G4bool G4QDecayChan::operator!=(const G4QDecayChan& rhs) const {return this!=&rhs;}
92 
93inline G4double G4QDecayChan::GetDecayChanLimit() const    {return aDecayChanLimit;}
94inline G4double G4QDecayChan::GetMinMass() const           {return theMinMass;}
95inline G4QPDGCodeVector G4QDecayChan::GetVecOfSecHadrons() {return aVecOfSecHadrons;}
96
97inline void G4QDecayChan::SetDecayChanLimit(G4double DCL)          {aDecayChanLimit=DCL;}
98inline void G4QDecayChan::SetMinMass(G4double minMass)             {theMinMass=minMass;}
99inline void G4QDecayChan::SetVecOfSecHadrons(G4QPDGCodeVector VSH) {aVecOfSecHadrons=VSH;}
100
101#endif
102
103
104
Note: See TracBrowser for help on using the repository browser.