This file is indexed.

/usr/include/root/TParticlePDG.h is in libroot-montecarlo-eg-dev 5.34.14-1build1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
// @(#)root/eg:$Id$
// Author: Pasha Murat   12/02/99

/*************************************************************************
 * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers.               *
 * All rights reserved.                                                  *
 *                                                                       *
 * For the licensing terms see $ROOTSYS/LICENSE.                         *
 * For the list of contributors see $ROOTSYS/README/CREDITS.             *
 *************************************************************************/
#ifndef TParticlePDG_hh
#define TParticlePDG_hh

#ifndef ROOT_TNamed
#include "TNamed.h"
#endif
#ifndef ROOT_TObjArray
#include "TObjArray.h"
#endif

class TDecayChannel;

class TParticlePDG : public TNamed {
public:
//------------------------------------------------------------------------------
//     data members
//------------------------------------------------------------------------------
protected:
  Int_t            fPdgCode;                    // PDG code of the particle
  Double_t         fMass;                       // particle mass in GeV
  Double_t         fCharge;                     // charge in units of |e|/3
  Double_t         fLifetime;                   // proper lifetime in seconds
  Double_t         fWidth;                      // total width in GeV
  Int_t            fParity;
  Double_t         fSpin;
  Double_t         fIsospin;                    // isospin
  Double_t         fI3;                         // i3
  Int_t            fStrangeness;                // flavours are defined if i3 != -1
  Int_t            fCharm;                      // 1 or -1 for C-particles,
                                                // 0 for others
  Int_t            fBeauty;                     //
  Int_t            fTop;                        //
  Int_t            fY;                          // X,Y: quantum numbers for the 4-th generation
  Int_t            fX;                          //
  Int_t            fStable;                     // 1 if stable, 0 otherwise
                                        
  TObjArray*       fDecayList;                  // array of decay channels
                                
  TString          fParticleClass;              // lepton, meson etc

  Int_t            fTrackingCode;               // G3 tracking code of the particle
  TParticlePDG*    fAntiParticle;               // pointer to antiparticle
//------------------------------------------------------------------------------
// functions
//------------------------------------------------------------------------------
   TParticlePDG(const TParticlePDG&); 
   TParticlePDG& operator=(const TParticlePDG&);

public:
   // ****** constructors  and destructor
   TParticlePDG();
   TParticlePDG(int pdg_code);
   TParticlePDG(const char* Name, const char* Title, Double_t Mass,
                Bool_t Stable, Double_t Width, Double_t Charge,
                const char* ParticleClass, Int_t PdgCode, Int_t Anti, 
                Int_t TrackingCode);

   virtual ~TParticlePDG();
   // ****** access methods
  
   Int_t           PdgCode      () const { return fPdgCode; }
   Double_t        Mass         () const { return fMass; }
   Double_t        Charge       () const { return fCharge; } //charge in units of |e|/3
   Double_t        Lifetime     () const { return fLifetime; }
   Double_t        Width        () const { return fWidth; }
   Int_t           Parity       () const { return fParity; }
   Double_t        Spin         () const { return fSpin; }
   Double_t        Isospin      () const { return fIsospin; }
   Double_t        I3           () const { return fI3; }
   Int_t           Strangeness  () const { return fStrangeness; }
   Int_t           Charm        () const { return fCharm; }
   Int_t           Beauty       () const { return fBeauty; }
   Int_t           Top          () const { return fTop; }
   Int_t           X            () const { return fX; }
   Int_t           Y            () const { return fY; }
   Int_t           Stable       () const { return fStable; }
   const char*     ParticleClass() const { return fParticleClass.Data(); }

   TObjArray*      DecayList    () { return fDecayList; }

   Int_t   NDecayChannels () const { 
     return (fDecayList) ? fDecayList->GetEntriesFast() : 0;
   }

   Int_t   TrackingCode() const { return fTrackingCode; }

   TDecayChannel* DecayChannel(Int_t i);

   TParticlePDG* AntiParticle() { return fAntiParticle; }

   // ****** modifiers

   void   SetAntiParticle(TParticlePDG* ap) { fAntiParticle = ap; }

   Int_t  AddDecayChannel(Int_t        Type, 
                          Double_t     BranchingRatio, 
                          Int_t        NDaughters, 
                          Int_t*       DaughterPdgCode);

   virtual void  PrintDecayChannel(TDecayChannel* dc, Option_t* opt = "") const; 

   virtual void  Print(Option_t* opt = "") const; // *MENU*

   ClassDef(TParticlePDG,2)  // PDG static particle definition
};

#endif