Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

sim::MCDigitInfo Class Reference

#include <MCDigitInfo.h>

List of all members.

Public Member Functions

 MCDigitInfo ()
 ~MCDigitInfo ()
void PushFraction (int i, unsigned short trackid, float fraction)
void NormalizeFraction (int i)
unsigned int NTracks (unsigned int i) const
unsigned int NDigits () const
HitProfile GetProfile (unsigned int i) const
void GetFraction (unsigned int i, unsigned int j, unsigned short &trackid, float &fraction) const
bool GetFraction (unsigned int i, unsigned int j, std::pair< unsigned short, float > &component) const

Public Attributes

std::vector< HitProfilefMCInfo


Constructor & Destructor Documentation

MCDigitInfo::MCDigitInfo  ) 
 

Definition at line 6 of file MCDigitInfo.cxx.

00006                          :
00007   fMCInfo(0)
00008 { }

MCDigitInfo::~MCDigitInfo  ) 
 

Definition at line 12 of file MCDigitInfo.cxx.

00012 { }


Member Function Documentation

bool MCDigitInfo::GetFraction unsigned int  i,
unsigned int  j,
std::pair< unsigned short, float > &  component
const
 

Definition at line 87 of file MCDigitInfo.cxx.

References sim::HitProfile::Component(), and fMCInfo.

00088 {
00089   if(i<0 && (i>=fMCInfo.size())) return false;
00090 
00091   if(j<0 && j>=fMCInfo[i].NComponents() ) return false;
00092   
00093   component = fMCInfo[i].Component(j);
00094 
00095   return true;
00096 }

void MCDigitInfo::GetFraction unsigned int  i,
unsigned int  j,
unsigned short &  trackid,
float &  fraction
const
 

Definition at line 68 of file MCDigitInfo.cxx.

References fMCInfo, sim::HitProfile::Fraction(), and sim::HitProfile::TrackId().

00069 {
00070   trackid = 0;
00071   fraction = 0.;
00072 
00073   unsigned int ui = i;
00074   if(i<0 && (ui>=fMCInfo.size())) return;
00075 
00076   if(j>=0 && j<fMCInfo[ui].NComponents()) {
00077     trackid  = fMCInfo[ui].TrackId(j);
00078     fraction = fMCInfo[ui].Fraction(j);
00079   }
00080 
00081   return;
00082 }

HitProfile MCDigitInfo::GetProfile unsigned int  i  )  const
 

Definition at line 56 of file MCDigitInfo.cxx.

References assert_jobc, and fMCInfo.

00057 {
00058   char msg[256];
00059   sprintf(msg,"MCDigitInfo::MCInfo(%d) out of range!",i);
00060   unsigned int ui = i;
00061   assert_jobc(i>=0 && (ui<fMCInfo.size()),msg);
00062 
00063   return fMCInfo[ui];
00064 }

unsigned int sim::MCDigitInfo::NDigits  )  const [inline]
 

Definition at line 33 of file MCDigitInfo.h.

Referenced by rsim::Simulator::CombineChannels().

00033 {return fMCInfo.size();};

void MCDigitInfo::NormalizeFraction int  i  ) 
 

Definition at line 32 of file MCDigitInfo.cxx.

References assert_jobc, and fMCInfo.

Referenced by rsim::Simulator::CombineChannels().

00033 {
00034   char msg[256];
00035   sprintf(msg,"MCDigitInfo::MCInfo(%d) out of range!",i);
00036   unsigned int ui = i;
00037   assert_jobc(i>=0 && (ui<fMCInfo.size()),msg);
00038 
00039   fMCInfo[ui].NormalizeFraction();
00040 
00041   return;
00042 }

unsigned int MCDigitInfo::NTracks unsigned int  i  )  const
 

Definition at line 46 of file MCDigitInfo.cxx.

References fMCInfo.

00047 {
00048 
00049   unsigned int ui = i;
00050   if(i<0 && (ui>=fMCInfo.size())) return 0;
00051 
00052   return fMCInfo[ui].NComponents();
00053 
00054 }

void MCDigitInfo::PushFraction int  i,
unsigned short  trackid,
float  fraction
 

Definition at line 16 of file MCDigitInfo.cxx.

References fMCInfo.

Referenced by rsim::Simulator::CombineChannels().

00017 {
00018   unsigned int ui = i;
00019   if (fMCInfo.size()<ui+1) fMCInfo.resize(ui+1);
00020 
00021   std::pair<unsigned short, float> tempcomp;
00022   tempcomp.first = trackid;
00023   tempcomp.second = fraction;
00024 
00025   fMCInfo[ui].Push(tempcomp);
00026 
00027   return;
00028 }


Member Data Documentation

std::vector<HitProfile> sim::MCDigitInfo::fMCInfo
 

Definition at line 39 of file MCDigitInfo.h.

Referenced by GetFraction(), GetProfile(), NormalizeFraction(), NTracks(), and PushFraction().


The documentation for this class was generated from the following files:
Generated on Wed Oct 15 02:35:32 2008 for NOvA Offline by  doxygen 1.3.9.1