source: trunk/examples/extended/optical/LXe/src/LXeStackingAction.cc @ 893

Last change on this file since 893 was 807, checked in by garnier, 16 years ago

update

File size: 3.2 KB
Line 
1//
2// ********************************************************************
3// * License and Disclaimer                                           *
4// *                                                                  *
5// * The  Geant4 software  is  copyright of the Copyright Holders  of *
6// * the Geant4 Collaboration.  It is provided  under  the terms  and *
7// * conditions of the Geant4 Software License,  included in the file *
8// * LICENSE and available at  http://cern.ch/geant4/license .  These *
9// * include a list of copyright holders.                             *
10// *                                                                  *
11// * Neither the authors of this software system, nor their employing *
12// * institutes,nor the agencies providing financial support for this *
13// * work  make  any representation or  warranty, express or implied, *
14// * regarding  this  software system or assume any liability for its *
15// * use.  Please see the license in the file  LICENSE  and URL above *
16// * for the full disclaimer and the limitation of liability.         *
17// *                                                                  *
18// * This  code  implementation is the result of  the  scientific and *
19// * technical work of the GEANT4 collaboration.                      *
20// * By using,  copying,  modifying or  distributing the software (or *
21// * any work based  on the software)  you  agree  to acknowledge its *
22// * use  in  resulting  scientific  publications,  and indicate your *
23// * acceptance of all terms of the Geant4 Software license.          *
24// ********************************************************************
25//
26#include "LXeStackingAction.hh"
27#include "LXeUserEventInformation.hh"
28#include "LXeSteppingAction.hh"
29
30#include "G4ios.hh"
31#include "G4ParticleDefinition.hh"
32#include "G4ParticleTypes.hh"
33#include "G4Track.hh"
34#include "G4RunManager.hh"
35#include "G4Event.hh"
36#include "G4EventManager.hh"
37
38//_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
39LXeStackingAction::LXeStackingAction()
40{}
41
42//_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
43LXeStackingAction::~LXeStackingAction()
44{}
45
46//_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
47G4ClassificationOfNewTrack
48LXeStackingAction::ClassifyNewTrack(const G4Track * aTrack){
49 
50  LXeUserEventInformation* eventInformation=
51    (LXeUserEventInformation*)G4EventManager::GetEventManager()
52    ->GetConstCurrentEvent()->GetUserInformation();
53 
54  //Count what process generated the optical photons
55  if(aTrack->GetDefinition()==G4OpticalPhoton::OpticalPhotonDefinition()){ 
56    // particle is optical photon
57    if(aTrack->GetParentID()>0){
58      // particle is secondary
59      if(aTrack->GetCreatorProcess()->GetProcessName()=="Scintillation")
60        eventInformation->IncPhotonCount_Scint();
61      else if(aTrack->GetCreatorProcess()->GetProcessName()=="Cerenkov")
62        eventInformation->IncPhotonCount_Ceren();
63    }
64  }
65  else{
66  }
67  return fUrgent;
68}
69
70//_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
71void LXeStackingAction::NewStage(){
72}
73
74//_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
75void LXeStackingAction::PrepareNewEvent(){ 
76}
77
78
79
80
81
82
83
84
Note: See TracBrowser for help on using the repository browser.