G4MaterialCutsCouple Class Reference

#include <G4MaterialCutsCouple.hh>


Public Member Functions

 G4MaterialCutsCouple ()
 G4MaterialCutsCouple (const G4Material *, G4ProductionCuts *cut=0)
 G4MaterialCutsCouple (const G4MaterialCutsCouple &right)
G4MaterialCutsCoupleoperator= (const G4MaterialCutsCouple &right)
virtual ~G4MaterialCutsCouple ()
G4int operator== (const G4MaterialCutsCouple &right) const
G4int operator!= (const G4MaterialCutsCouple &right) const
void SetMaterial (const G4Material *)
const G4MaterialGetMaterial () const
void SetProductionCuts (G4ProductionCuts *)
G4ProductionCutsGetProductionCuts () const
G4bool IsRecalcNeeded () const
void PhysicsTableUpdated ()
void SetIndex (G4int idx)
G4int GetIndex () const
void SetUseFlag (G4bool flg=true)
G4bool IsUsed () const


Detailed Description

Definition at line 50 of file G4MaterialCutsCouple.hh.


Constructor & Destructor Documentation

G4MaterialCutsCouple::G4MaterialCutsCouple (  ) 

Definition at line 41 of file G4MaterialCutsCouple.cc.

00041                                            :
00042   isMaterialModified(false),
00043   fMaterial(0),
00044   fCuts(0),
00045   indexNumber(-1),
00046   isUsedInGeometry(false)
00047 {
00048 }
  

G4MaterialCutsCouple::G4MaterialCutsCouple ( const G4Material ,
G4ProductionCuts cut = 0 
)

Definition at line 50 of file G4MaterialCutsCouple.cc.

00051                                                                   :
00052   isMaterialModified(true),
00053   fMaterial(material),
00054   fCuts(cut),
00055   indexNumber(-1),
00056   isUsedInGeometry(false)
00057 {
00058 }

G4MaterialCutsCouple::G4MaterialCutsCouple ( const G4MaterialCutsCouple right  ) 

Definition at line 61 of file G4MaterialCutsCouple.cc.

00062   :fMaterial(0), fCuts(0)
00063 {
00064   *this = right;
00065 }

G4MaterialCutsCouple::~G4MaterialCutsCouple (  )  [virtual]

Definition at line 67 of file G4MaterialCutsCouple.cc.

00068 {
00069 }


Member Function Documentation

G4int G4MaterialCutsCouple::GetIndex (  )  const [inline]

Definition at line 111 of file G4MaterialCutsCouple.hh.

Referenced by G4NuclearStopping::AlongStepDoIt(), G4VMultipleScattering::AlongStepGetPhysicalInteractionLength(), G4ProductionCutsTable::CheckMaterialCutsCoupleInfo(), G4AdjointCSManager::ComputeTotalAdjointCS(), G4UrbanMscModel96::ComputeTruePathLengthLimit(), G4UrbanMscModel95::ComputeTruePathLengthLimit(), G4UrbanMscModel93::ComputeTruePathLengthLimit(), G4UrbanMscModel92::ComputeTruePathLengthLimit(), G4UrbanMscModel90::ComputeTruePathLengthLimit(), G4GoudsmitSaundersonMscModel::ComputeTruePathLengthLimit(), G4VEmAdjointModel::DefineCurrentMaterial(), G4IonCoulombScatteringModel::DefineMaterial(), G4hCoulombScatteringModel::DefineMaterial(), G4eSingleCoulombScatteringModel::DefineMaterial(), G4eCoulombScatteringModel::DefineMaterial(), G4ProductionCutsTable::DumpCouples(), G4EmModelManager::FillDEDXVector(), G4EmModelManager::FillLambdaVector(), G4EmCalculator::GetCrossSectionPerVolume(), G4EnergyLossTables::GetDEDX(), G4VEnergyLoss::GetLossWithFluct(), G4VeLowEnergyLoss::GetLossWithFluct(), G4VLowEnergyDiscretePhotonProcess::GetMeanFreePath(), G4hImpactIonisation::GetMeanFreePath(), G4EnergyLossTables::GetPreciseDEDX(), G4EnergyLossTables::GetPreciseEnergyFromRange(), G4EnergyLossTables::GetPreciseRangeFromEnergy(), G4EnergyLossTables::GetRange(), G4VMscModel::GetTransportMeanFreePath(), G4VEmModel::InitialiseElementSelectors(), G4EmCorrections::IonHighOrderCorrections(), G4WHadronElasticProcess::PostStepDoIt(), G4hImpactIonisation::PostStepDoIt(), G4HadronElasticProcess::PostStepDoIt(), G4ForwardXrayTR::PostStepDoIt(), G4hImpactIonisation::PrintInfoDefinition(), G4PenelopePhotoElectricModel::SampleSecondaries(), G4PenelopeIonisationModel::SampleSecondaries(), G4PenelopeComptonModel::SampleSecondaries(), G4PEEffectFluoModel::SampleSecondaries(), G4LowEPComptonModel::SampleSecondaries(), G4LivermorePolarizedPhotoElectricModel::SampleSecondaries(), G4LivermorePhotoElectricModel::SampleSecondaries(), G4LivermoreComptonModifiedModel::SampleSecondaries(), G4LivermoreComptonModel::SampleSecondaries(), G4KleinNishinaModel::SampleSecondaries(), G4VEmModel::SelectRandomAtom(), G4VCrossSectionHandler::SelectRandomAtom(), G4eBremsstrahlungModel::SelectRandomAtom(), G4VCrossSectionHandler::SelectRandomElement(), and G4ProductionCutsTable::StoreMaterialCutsCoupleInfo().

00112 { return indexNumber; }

const G4Material * G4MaterialCutsCouple::GetMaterial (  )  const [inline]

Definition at line 150 of file G4MaterialCutsCouple.hh.

Referenced by G4NuclearStopping::AlongStepDoIt(), G4hImpactIonisation::AlongStepDoIt(), G4eIonisationCrossSectionHandler::BuildCrossSectionsForMaterials(), G4CrossSectionHandler::BuildCrossSectionsForMaterials(), G4BremsstrahlungCrossSectionHandler::BuildCrossSectionsForMaterials(), G4hImpactIonisation::BuildPhysicsTable(), G4LossTableBuilder::BuildTableForModel(), G4ForwardXrayTR::BuildXrayTRtables(), G4ProductionCutsTable::CheckMaterialCutsCoupleInfo(), G4VEmModel::ComputeDEDX(), G4hImpactIonisation::ComputeDEDX(), G4BraggIonModel::CorrectionsAlongStep(), G4BetheBlochModel::CorrectionsAlongStep(), G4VEmModel::CrossSection(), G4VEmAdjointModel::DefineCurrentMaterial(), G4IonCoulombScatteringModel::DefineMaterial(), G4hCoulombScatteringModel::DefineMaterial(), G4eSingleCoulombScatteringModel::DefineMaterial(), G4eCoulombScatteringModel::DefineMaterial(), G4ProductionCutsTable::DumpCouples(), G4EmModelManager::FillDEDXVector(), G4EmModelManager::FillLambdaVector(), G4InitXscPAI::G4InitXscPAI(), G4PAIxSection::G4PAIxSection(), G4ShellVacancy::GenerateNumberOfIonisations(), G4AdjointBremsstrahlungModel::GetAdjointCrossSection(), G4VMscModel::GetEnergy(), G4ForwardXrayTR::GetEnergyTR(), G4VEnergyLoss::GetLossWithFluct(), G4VeLowEnergyLoss::GetLossWithFluct(), G4hImpactIonisation::GetMeanFreePath(), G4VMscModel::GetRange(), G4MuBremsstrahlungModel::Initialise(), G4LivermoreRayleighModel::Initialise(), G4LivermorePhotoElectricModel::Initialise(), G4LivermoreGammaConversionModel::Initialise(), G4EmModelManager::Initialise(), G4eBremsstrahlungModel::Initialise(), G4LossTableBuilder::InitialiseBaseMaterials(), G4VEmModel::InitialiseElementSelectors(), G4EmCorrections::InitialiseForNewRun(), G4EmCorrections::IonHighOrderCorrections(), G4MuBetheBlochModel::MinEnergyCut(), G4Transportation::PostStepDoIt(), G4ITTransportation::PostStepDoIt(), G4hImpactIonisation::PostStepDoIt(), G4ForwardXrayTR::PostStepDoIt(), G4CoupledTransportation::PostStepDoIt(), G4hImpactIonisation::PrintInfoDefinition(), G4UrbanMscModel92::SampleScattering(), G4UrbanMscModel90::SampleScattering(), G4GoudsmitSaundersonMscModel::SampleScattering(), G4SeltzerBergerModel::SampleSecondaries(), G4PenelopeRayleighModel::SampleSecondaries(), G4PenelopePhotoElectricModel::SampleSecondaries(), G4PenelopeIonisationModel::SampleSecondaries(), G4PenelopeGammaConversionModel::SampleSecondaries(), G4PenelopeComptonModel::SampleSecondaries(), G4PenelopeBremsstrahlungModel::SampleSecondaries(), G4PEEffectModel::SampleSecondaries(), G4PEEffectFluoModel::SampleSecondaries(), G4PairProductionRelModel::SampleSecondaries(), G4LowEPComptonModel::SampleSecondaries(), G4LivermoreRayleighModel::SampleSecondaries(), G4LivermorePolarizedPhotoElectricModel::SampleSecondaries(), G4LivermorePhotoElectricModel::SampleSecondaries(), G4LivermoreComptonModifiedModel::SampleSecondaries(), G4LivermoreComptonModel::SampleSecondaries(), G4LivermoreBremsstrahlungModel::SampleSecondaries(), G4eBremsstrahlungRelModel::SampleSecondaries(), G4eBremsstrahlungModel::SampleSecondaries(), G4eBremParametrizedModel::SampleSecondaries(), G4BetheHeitlerModel::SampleSecondaries(), G4VEmModel::SelectRandomAtom(), G4VCrossSectionHandler::SelectRandomAtom(), G4eBremsstrahlungModel::SelectRandomAtom(), G4VCrossSectionHandler::SelectRandomElement(), G4ProductionCutsTable::StoreMaterialCutsCoupleInfo(), G4VEmModel::Value(), and G4EmSaturation::VisibleEnergyDeposition().

00151 {
00152   return fMaterial;
00153 }

G4ProductionCuts * G4MaterialCutsCouple::GetProductionCuts (  )  const [inline]

Definition at line 127 of file G4MaterialCutsCouple.hh.

Referenced by G4VEnergyLossProcess::AlongStepDoIt(), G4VEnergyLossProcess::AlongStepGetPhysicalInteractionLength(), G4ProductionCutsTable::CheckMaterialCutsCoupleInfo(), G4WentzelVIRelModel::ComputeTruePathLengthLimit(), G4WentzelVIModel::ComputeTruePathLengthLimit(), G4ProductionCutsTable::DumpCouples(), G4RangeTest::Escape(), G4EmBiasingManager::Initialise(), G4LossTableBuilder::InitialiseBaseMaterials(), G4Transportation::PostStepDoIt(), G4ITTransportation::PostStepDoIt(), G4CoupledTransportation::PostStepDoIt(), G4VEnergyLossProcess::PreparePhysicsTable(), and G4ProductionCutsTable::StoreMaterialCutsCoupleInfo().

00128 { return fCuts; }

G4bool G4MaterialCutsCouple::IsRecalcNeeded (  )  const [inline]

Definition at line 156 of file G4MaterialCutsCouple.hh.

References G4ProductionCuts::IsModified().

Referenced by G4VEnergyLoss::CutsWhereModified(), G4hRDEnergyLoss::CutsWhereModified(), and G4ProductionCutsTable::DumpCouples().

00157 {
00158   G4bool isCutModified = false;
00159   if (fCuts !=0 ) isCutModified = fCuts->IsModified();
00160   return (isMaterialModified || isCutModified);
00161 }

G4bool G4MaterialCutsCouple::IsUsed (  )  const [inline]

Definition at line 119 of file G4MaterialCutsCouple.hh.

Referenced by G4ProductionCutsTable::CheckMaterialCutsCoupleInfo(), G4ProductionCutsTable::DumpCouples(), and G4ProductionCutsTable::StoreMaterialCutsCoupleInfo().

00120 { return isUsedInGeometry; }

G4int G4MaterialCutsCouple::operator!= ( const G4MaterialCutsCouple right  )  const [inline]

Definition at line 137 of file G4MaterialCutsCouple.hh.

00138 {
00139   return (this !=  &right);
00140 }

G4MaterialCutsCouple & G4MaterialCutsCouple::operator= ( const G4MaterialCutsCouple right  ) 

Definition at line 71 of file G4MaterialCutsCouple.cc.

References fCuts, fMaterial, indexNumber, isMaterialModified, and isUsedInGeometry.

00072 {
00073   if (&right==this) return *this;
00074 
00075   fMaterial = right.fMaterial;
00076   fCuts     = right.fCuts; 
00077   isMaterialModified = right.isMaterialModified;
00078   indexNumber = right.indexNumber;
00079   isUsedInGeometry = right.isUsedInGeometry;
00080 
00081   return *this;
00082 }

G4int G4MaterialCutsCouple::operator== ( const G4MaterialCutsCouple right  )  const [inline]

Definition at line 131 of file G4MaterialCutsCouple.hh.

00132 {
00133   return (this == &right);
00134 }

void G4MaterialCutsCouple::PhysicsTableUpdated (  )  [inline]

Definition at line 164 of file G4MaterialCutsCouple.hh.

References G4ProductionCuts::PhysicsTableUpdated().

00165 {
00166   if (fCuts !=0 ) fCuts->PhysicsTableUpdated();
00167   isMaterialModified = false;
00168 }

void G4MaterialCutsCouple::SetIndex ( G4int  idx  )  [inline]

Definition at line 107 of file G4MaterialCutsCouple.hh.

Referenced by G4ProductionCutsTable::UpdateCoupleTable().

00108 { indexNumber = idx; }

void G4MaterialCutsCouple::SetMaterial ( const G4Material  )  [inline]

Definition at line 143 of file G4MaterialCutsCouple.hh.

00144 {
00145   fMaterial = material;
00146   isMaterialModified = true;
00147 }

void G4MaterialCutsCouple::SetProductionCuts ( G4ProductionCuts  )  [inline]

Definition at line 123 of file G4MaterialCutsCouple.hh.

00124 { fCuts = aCut; }

void G4MaterialCutsCouple::SetUseFlag ( G4bool  flg = true  )  [inline]

Definition at line 115 of file G4MaterialCutsCouple.hh.

Referenced by G4ProductionCutsTable::UpdateCoupleTable().

00116 { isUsedInGeometry = flg; }


The documentation for this class was generated from the following files:
Generated on Mon May 27 17:52:28 2013 for Geant4 by  doxygen 1.4.7