HepPDT Reference Documentation

HepPDT

SpinState.hh

Go to the documentation of this file.
00001 // ----------------------------------------------------------------------
00002 //
00003 // SpinState.hh
00004 // Author:  Lynn Garren
00005 //
00006 // ----------------------------------------------------------------------
00007 #ifndef SPINSTATE_HH
00008 #define SPINSTATE_HH
00009 
00010 namespace HepPDT {
00011 
00013 
00020 class SpinState  {
00021 
00022 public:
00023 
00024   // ---  birth/death:
00025   //
00027   inline SpinState( double ts = 0., double spin = 0., double oam =0. );
00028 
00029   // ---  copying:
00030   //
00031   inline SpinState( const SpinState & orig );
00032   inline SpinState& operator = ( const SpinState & rhs );
00033   inline void swap( SpinState & other );
00034 
00035   // ---  booleans:
00036   //
00038   inline bool  operator == ( const SpinState & rhs ) const;
00039 
00040   // ---  accessors:
00041   //
00043   double totalSpin()     const {  return itsTotalSpin; }
00045   double spin()          const {  return itsSpin; }
00047   double orbAngMom()     const {  return itsOrbAngMom; }
00048 
00049   // ---  mutators:
00050   //
00052   void  setTotalSpin( double spin )  {  itsTotalSpin = spin; }
00054   void  setSpin( double spin )       {  itsSpin = spin; }
00056   void  setOrbAngMom( double ang )   {  itsOrbAngMom = ang; }
00057   
00058 private:
00059 
00060   // ---  class-specific data:
00061   //
00062   double  itsTotalSpin;
00063   double  itsSpin;
00064   double  itsOrbAngMom;
00065 
00066 };  // SpinState
00067 
00068 inline
00069 void swap( SpinState & first,SpinState & second )  { first.swap( second ); }
00070 
00071 }       // HepPDT
00072 
00073 #include "HepPDT/SpinState.icc"
00074 
00075 #endif // SPINSTATE_HH

Generated on Fri Dec 4 14:05:24 2009 for HepPDT by  doxygen 1.4.7