Geant4  10.02.p01
G4DigiModel.cc
Go to the documentation of this file.
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 //
27 // $Id: G4DigiModel.cc 66373 2012-12-18 09:41:34Z gcosmo $
28 //
29 //
30 // John Allison 26th August 1998.
31 // Model which knows how to draw GEANT4 digis (digitisations).
32 
33 #include "G4DigiModel.hh"
34 
35 #include "G4ModelingParameters.hh"
36 #include "G4VGraphicsScene.hh"
37 #include "G4Event.hh"
38 
40 
42  fpCurrentDigi(0)
43 {
44  fType = "G4DigiModel";
45  fGlobalTag = "G4DigiModel for all digis.";
47 }
48 
50 {
51  const G4Event* event = fpMP->GetEvent();
52  if (event) {
53  G4DCofThisEvent* DCE = event -> GetDCofThisEvent ();
54  if (DCE) {
55  G4int nDC = DCE -> GetCapacity ();
56  for (int iDC = 0; iDC < nDC; iDC++) {
57  G4VDigiCollection* DC = DCE -> GetDC (iDC);
58  if (DC) {
59  for(size_t iDigi = 0; iDigi < DC->GetSize(); ++iDigi) {
60  fpCurrentDigi = DC -> GetDigi (iDigi);
61  if (fpCurrentDigi) sceneHandler.AddCompound (*fpCurrentDigi);
62  }
63  }
64  }
65  }
66  }
67 }
virtual ~G4DigiModel()
Definition: G4DigiModel.cc:39
G4String fType
Definition: G4VModel.hh:108
int G4int
Definition: G4Types.hh:78
G4String fGlobalTag
Definition: G4VModel.hh:109
const G4Event * GetEvent() const
const G4ModelingParameters * fpMP
Definition: G4VModel.hh:113
const G4VDigi * fpCurrentDigi
Definition: G4DigiModel.hh:63
G4String fGlobalDescription
Definition: G4VModel.hh:110
virtual void DescribeYourselfTo(G4VGraphicsScene &)
Definition: G4DigiModel.cc:49
virtual void AddCompound(const G4VTrajectory &)=0
virtual size_t GetSize() const