G4TrajectoryParticleFilter Class Reference

#include <G4TrajectoryParticleFilter.hh>

Inheritance diagram for G4TrajectoryParticleFilter:

G4SmartFilter< G4VTrajectory > G4VFilter< G4VTrajectory >

Public Member Functions

 G4TrajectoryParticleFilter (const G4String &name="Unspecified")
virtual ~G4TrajectoryParticleFilter ()
virtual bool Evaluate (const G4VTrajectory &) const
virtual void Print (std::ostream &ostr) const
virtual void Clear ()
void Add (const G4String &particle)

Detailed Description

Definition at line 40 of file G4TrajectoryParticleFilter.hh.


Constructor & Destructor Documentation

G4TrajectoryParticleFilter::G4TrajectoryParticleFilter ( const G4String name = "Unspecified"  ) 

Definition at line 35 of file G4TrajectoryParticleFilter.cc.

00036   :G4SmartFilter<G4VTrajectory>(name)
00037 {}

G4TrajectoryParticleFilter::~G4TrajectoryParticleFilter (  )  [virtual]

Definition at line 39 of file G4TrajectoryParticleFilter.cc.

00039 {}


Member Function Documentation

void G4TrajectoryParticleFilter::Add ( const G4String particle  ) 

Definition at line 58 of file G4TrajectoryParticleFilter.cc.

00059 {
00060   fParticles.push_back(particle);
00061 }

void G4TrajectoryParticleFilter::Clear (  )  [virtual]

Implements G4SmartFilter< G4VTrajectory >.

Definition at line 76 of file G4TrajectoryParticleFilter.cc.

00077 {
00078   // Clear particle type vector
00079   fParticles.clear();
00080 }

bool G4TrajectoryParticleFilter::Evaluate ( const G4VTrajectory  )  const [virtual]

Implements G4SmartFilter< G4VTrajectory >.

Definition at line 42 of file G4TrajectoryParticleFilter.cc.

References G4cout, G4endl, G4VTrajectory::GetParticleName(), and G4SmartFilter< G4VTrajectory >::GetVerbose().

00043 {
00044   G4String particle = traj.GetParticleName();
00045 
00046   if (GetVerbose()) G4cout<<"G4TrajectoryParticleFilter processing trajectory with particle type: "<<particle<<G4endl;
00047 
00048   std::vector<G4String>::const_iterator iter = std::find(fParticles.begin(), fParticles.end(), particle);
00049 
00050   // Fail if particle type not found in particle list
00051   if (iter == fParticles.end()) return false;
00052 
00053   return true;
00054 }

void G4TrajectoryParticleFilter::Print ( std::ostream &  ostr  )  const [virtual]

Implements G4SmartFilter< G4VTrajectory >.

Definition at line 64 of file G4TrajectoryParticleFilter.cc.

References G4endl.

00065 {
00066   ostr<<"Particle types registered: "<<G4endl;
00067   std::vector<G4String>::const_iterator iter = fParticles.begin();
00068   
00069   while (iter != fParticles.end()) {
00070     ostr<<*iter<<G4endl;    
00071     iter++;
00072   }
00073 }


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