Import Geant4 3.2.0 source tree

This commit is contained in:
Gabriele Cosmo
2016-06-08 16:10:37 +02:00
parent 137e303ecc
commit 36c080dca6
3464 changed files with 119310 additions and 52696 deletions
@@ -0,0 +1,75 @@
//
// ********************************************************************
// * DISCLAIMER *
// * *
// * The following disclaimer summarizes all the specific disclaimers *
// * of contributors to this software. The specific disclaimers,which *
// * govern, are listed with their locations in: *
// * http://cern.ch/geant4/license *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. *
// * *
// * This code implementation is the intellectual property of the *
// * GEANT4 collaboration. *
// * By copying, distributing or modifying the Program (or any work *
// * based on the Program) you indicate your acceptance of this *
// * statement, and all its terms. *
// ********************************************************************
//
//
// $Id: G4AxesModel.hh,v 1.1.2.1 2001/06/28 19:16:18 gunter Exp $
// GEANT4 tag $Name: $
//
//
// John Allison 3rd April 2001
//
// Class Description:
//
// Model which knows how to draw axes.
//
// For access to base class information, e.g., modeling parameters,
// use GetModelingParameters() inherited from G4VModel. See Class
// Description of the base class G4VModel.
#ifndef G4AXESMODEL_HH
#define G4AXESMODEL_HH
#include "G4VModel.hh"
class G4AxesModel: public G4VModel {
public: // With description
G4AxesModel (G4double, G4double, G4double, G4double);
virtual ~G4AxesModel ();
virtual void DescribeYourselfTo (G4VGraphicsScene&);
// The main task of a model is to describe itself to the scene.
virtual G4String GetCurrentDescription () const;
// A description which depends on the current state of the model.
virtual G4String GetCurrentTag () const;
// A tag which depends on the current state of the model.
virtual G4bool Validate ();
// Validate, but allow internal changes (hence non-const function).
private:
// Private copy contructor and assignmen to forbid uset...
G4AxesModel (const G4AxesModel&);
G4AxesModel& operator = (const G4AxesModel&);
G4double fX0, fY0, fZ0, fLength;
};
#include "G4AxesModel.icc"
#endif
@@ -0,0 +1,37 @@
//
// ********************************************************************
// * DISCLAIMER *
// * *
// * The following disclaimer summarizes all the specific disclaimers *
// * of contributors to this software. The specific disclaimers,which *
// * govern, are listed with their locations in: *
// * http://cern.ch/geant4/license *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. *
// * *
// * This code implementation is the intellectual property of the *
// * GEANT4 collaboration. *
// * By copying, distributing or modifying the Program (or any work *
// * based on the Program) you indicate your acceptance of this *
// * statement, and all its terms. *
// ********************************************************************
//
//
// $Id: G4AxesModel.icc,v 1.1.2.1 2001/06/28 19:16:18 gunter Exp $
// GEANT4 tag $Name: $
inline G4String G4AxesModel::GetCurrentTag () const {
return fGlobalTag;
}
inline G4String G4AxesModel::GetCurrentDescription () const {
return fGlobalDescription;
}
inline G4bool G4AxesModel::Validate () {
return true;
}
@@ -1,12 +1,28 @@
// This code implementation is the intellectual property of
// the GEANT4 collaboration.
//
// By copying, distributing or modifying the Program (or any work
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
// ********************************************************************
// * DISCLAIMER *
// * *
// * The following disclaimer summarizes all the specific disclaimers *
// * of contributors to this software. The specific disclaimers,which *
// * govern, are listed with their locations in: *
// * http://cern.ch/geant4/license *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. *
// * *
// * This code implementation is the intellectual property of the *
// * GEANT4 collaboration. *
// * By copying, distributing or modifying the Program (or any work *
// * based on the Program) you indicate your acceptance of this *
// * statement, and all its terms. *
// ********************************************************************
//
// $Id: G4BoundingSphereScene.hh,v 1.7 2000/05/15 11:08:49 johna Exp $
// GEANT4 tag $Name: geant4-03-01 $
//
// $Id: G4BoundingSphereScene.hh,v 1.8.2.1 2001/06/28 19:16:18 gunter Exp $
// GEANT4 tag $Name: $
//
//
// John Allison 7th June 1997
@@ -32,7 +48,7 @@ class G4BoundingSphereScene: public G4VGraphicsScene {
public:
G4BoundingSphereScene ();
~G4BoundingSphereScene ();
virtual ~G4BoundingSphereScene ();
void AddThis (const G4Box& s) {Accrue (s);}
void AddThis (const G4Cons& s) {Accrue (s);}
void AddThis (const G4Tubs& s) {Accrue (s);}
@@ -1,12 +1,28 @@
// This code implementation is the intellectual property of
// the GEANT4 collaboration.
//
// By copying, distributing or modifying the Program (or any work
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
// ********************************************************************
// * DISCLAIMER *
// * *
// * The following disclaimer summarizes all the specific disclaimers *
// * of contributors to this software. The specific disclaimers,which *
// * govern, are listed with their locations in: *
// * http://cern.ch/geant4/license *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. *
// * *
// * This code implementation is the intellectual property of the *
// * GEANT4 collaboration. *
// * By copying, distributing or modifying the Program (or any work *
// * based on the Program) you indicate your acceptance of this *
// * statement, and all its terms. *
// ********************************************************************
//
// $Id: G4FlavoredParallelWorldModel.hh,v 1.5 1999/12/15 14:54:29 gunter Exp $
// GEANT4 tag $Name: geant4-03-01 $
//
// $Id: G4FlavoredParallelWorldModel.hh,v 1.5.4.1 2001/06/28 19:16:18 gunter Exp $
// GEANT4 tag $Name: $
//
// P. Mora de Freitas et M.Verderi - 19 June 1998.
//
@@ -1,12 +1,28 @@
// This code implementation is the intellectual property of
// the GEANT4 collaboration.
//
// By copying, distributing or modifying the Program (or any work
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
// ********************************************************************
// * DISCLAIMER *
// * *
// * The following disclaimer summarizes all the specific disclaimers *
// * of contributors to this software. The specific disclaimers,which *
// * govern, are listed with their locations in: *
// * http://cern.ch/geant4/license *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. *
// * *
// * This code implementation is the intellectual property of the *
// * GEANT4 collaboration. *
// * By copying, distributing or modifying the Program (or any work *
// * based on the Program) you indicate your acceptance of this *
// * statement, and all its terms. *
// ********************************************************************
//
// $Id: G4HitsModel.hh,v 1.4 1999/12/15 14:54:29 gunter Exp $
// GEANT4 tag $Name: geant4-03-01 $
//
// $Id: G4HitsModel.hh,v 1.4.4.1 2001/06/28 19:16:18 gunter Exp $
// GEANT4 tag $Name: $
//
//
// John Allison 26th August 1998.
@@ -1,12 +1,28 @@
// This code implementation is the intellectual property of
// the GEANT4 collaboration.
//
// By copying, distributing or modifying the Program (or any work
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
// ********************************************************************
// * DISCLAIMER *
// * *
// * The following disclaimer summarizes all the specific disclaimers *
// * of contributors to this software. The specific disclaimers,which *
// * govern, are listed with their locations in: *
// * http://cern.ch/geant4/license *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. *
// * *
// * This code implementation is the intellectual property of the *
// * GEANT4 collaboration. *
// * By copying, distributing or modifying the Program (or any work *
// * based on the Program) you indicate your acceptance of this *
// * statement, and all its terms. *
// ********************************************************************
//
// $Id: G4HitsModel.icc,v 1.4 1999/12/15 14:54:29 gunter Exp $
// GEANT4 tag $Name: geant4-03-01 $
//
// $Id: G4HitsModel.icc,v 1.4.4.1 2001/06/28 19:16:18 gunter Exp $
// GEANT4 tag $Name: $
inline G4String G4HitsModel::GetCurrentTag () const {
return fGlobalTag;
@@ -1,12 +1,28 @@
// This code implementation is the intellectual property of
// the GEANT4 collaboration.
//
// By copying, distributing or modifying the Program (or any work
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
// ********************************************************************
// * DISCLAIMER *
// * *
// * The following disclaimer summarizes all the specific disclaimers *
// * of contributors to this software. The specific disclaimers,which *
// * govern, are listed with their locations in: *
// * http://cern.ch/geant4/license *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. *
// * *
// * This code implementation is the intellectual property of the *
// * GEANT4 collaboration. *
// * By copying, distributing or modifying the Program (or any work *
// * based on the Program) you indicate your acceptance of this *
// * statement, and all its terms. *
// ********************************************************************
//
// $Id: G4LogicalVolumeModel.hh,v 1.4 2000/04/12 13:02:36 johna Exp $
// GEANT4 tag $Name: geant4-03-01 $
//
// $Id: G4LogicalVolumeModel.hh,v 1.4.4.1 2001/06/28 19:16:18 gunter Exp $
// GEANT4 tag $Name: $
//
//
// John Allison 26th July 1999.
@@ -1,12 +1,28 @@
// This code implementation is the intellectual property of
// the GEANT4 collaboration.
//
// By copying, distributing or modifying the Program (or any work
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
// ********************************************************************
// * DISCLAIMER *
// * *
// * The following disclaimer summarizes all the specific disclaimers *
// * of contributors to this software. The specific disclaimers,which *
// * govern, are listed with their locations in: *
// * http://cern.ch/geant4/license *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. *
// * *
// * This code implementation is the intellectual property of the *
// * GEANT4 collaboration. *
// * By copying, distributing or modifying the Program (or any work *
// * based on the Program) you indicate your acceptance of this *
// * statement, and all its terms. *
// ********************************************************************
//
// $Id: G4ModelingParameters.hh,v 1.5 1999/12/15 14:54:30 gunter Exp $
// GEANT4 tag $Name: geant4-03-01 $
//
// $Id: G4ModelingParameters.hh,v 1.5.4.1 2001/06/28 19:16:18 gunter Exp $
// GEANT4 tag $Name: $
//
//
// John Allison 31st December 1997.
@@ -1,12 +1,28 @@
// This code implementation is the intellectual property of
// the GEANT4 collaboration.
//
// By copying, distributing or modifying the Program (or any work
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
// ********************************************************************
// * DISCLAIMER *
// * *
// * The following disclaimer summarizes all the specific disclaimers *
// * of contributors to this software. The specific disclaimers,which *
// * govern, are listed with their locations in: *
// * http://cern.ch/geant4/license *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. *
// * *
// * This code implementation is the intellectual property of the *
// * GEANT4 collaboration. *
// * By copying, distributing or modifying the Program (or any work *
// * based on the Program) you indicate your acceptance of this *
// * statement, and all its terms. *
// ********************************************************************
//
// $Id: G4ModelingParameters.icc,v 1.3 1999/12/15 14:54:30 gunter Exp $
// GEANT4 tag $Name: geant4-03-01 $
//
// $Id: G4ModelingParameters.icc,v 1.3.4.1 2001/06/28 19:16:18 gunter Exp $
// GEANT4 tag $Name: $
//
//
// John Allison 31st December 1997.
@@ -1,12 +1,28 @@
// This code implementation is the intellectual property of
// the GEANT4 collaboration.
//
// By copying, distributing or modifying the Program (or any work
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
// ********************************************************************
// * DISCLAIMER *
// * *
// * The following disclaimer summarizes all the specific disclaimers *
// * of contributors to this software. The specific disclaimers,which *
// * govern, are listed with their locations in: *
// * http://cern.ch/geant4/license *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. *
// * *
// * This code implementation is the intellectual property of the *
// * GEANT4 collaboration. *
// * By copying, distributing or modifying the Program (or any work *
// * based on the Program) you indicate your acceptance of this *
// * statement, and all its terms. *
// ********************************************************************
//
// $Id: G4NullModel.hh,v 1.4 1999/12/15 14:54:30 gunter Exp $
// GEANT4 tag $Name: geant4-03-01 $
//
// $Id: G4NullModel.hh,v 1.4.4.1 2001/06/28 19:16:19 gunter Exp $
// GEANT4 tag $Name: $
//
//
// John Allison 4th April 1998.
@@ -1,12 +1,28 @@
// This code implementation is the intellectual property of
// the GEANT4 collaboration.
//
// By copying, distributing or modifying the Program (or any work
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
// ********************************************************************
// * DISCLAIMER *
// * *
// * The following disclaimer summarizes all the specific disclaimers *
// * of contributors to this software. The specific disclaimers,which *
// * govern, are listed with their locations in: *
// * http://cern.ch/geant4/license *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. *
// * *
// * This code implementation is the intellectual property of the *
// * GEANT4 collaboration. *
// * By copying, distributing or modifying the Program (or any work *
// * based on the Program) you indicate your acceptance of this *
// * statement, and all its terms. *
// ********************************************************************
//
// $Id: G4PhysicalVolumeModel.hh,v 1.11 2001/02/03 18:39:58 johna Exp $
// GEANT4 tag $Name: geant4-03-01 $
//
// $Id: G4PhysicalVolumeModel.hh,v 1.12.2.1 2001/06/28 19:16:19 gunter Exp $
// GEANT4 tag $Name: $
//
//
// John Allison 31st December 1997.
@@ -78,6 +94,8 @@ public: // With description
// For use (optional) by the scene handler if it needs to know about
// the current information maintained through these pointers.
void CurtailDescent() {fCurtailDescent = true;}
protected:
void VisitGeometryAndGetVisReps (G4VPhysicalVolume*,
@@ -114,6 +132,7 @@ protected:
G4int fCurrentDepth; // Current depth of geom. hierarchy.
G4VPhysicalVolume* fpCurrentPV; // Current physical volume.
G4LogicalVolume* fpCurrentLV; // Current logical volume.
G4bool fCurtailDescent;// Can be set to curtail descent.
////////////////////////////////////////////////////////////
// Pointers to working space in scene, if required.
@@ -1,12 +1,28 @@
// This code implementation is the intellectual property of
// the GEANT4 collaboration.
//
// By copying, distributing or modifying the Program (or any work
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
// ********************************************************************
// * DISCLAIMER *
// * *
// * The following disclaimer summarizes all the specific disclaimers *
// * of contributors to this software. The specific disclaimers,which *
// * govern, are listed with their locations in: *
// * http://cern.ch/geant4/license *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. *
// * *
// * This code implementation is the intellectual property of the *
// * GEANT4 collaboration. *
// * By copying, distributing or modifying the Program (or any work *
// * based on the Program) you indicate your acceptance of this *
// * statement, and all its terms. *
// ********************************************************************
//
// $Id: G4PhysicalVolumeSearchScene.hh,v 1.7 2000/05/22 07:36:57 johna Exp $
// GEANT4 tag $Name: geant4-03-01 $
//
// $Id: G4PhysicalVolumeSearchScene.hh,v 1.7.4.1 2001/06/28 19:16:19 gunter Exp $
// GEANT4 tag $Name: $
//
//
// John Allison 10th August 1998.
@@ -1,12 +1,28 @@
// This code implementation is the intellectual property of
// the GEANT4 collaboration.
//
// By copying, distributing or modifying the Program (or any work
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
// ********************************************************************
// * DISCLAIMER *
// * *
// * The following disclaimer summarizes all the specific disclaimers *
// * of contributors to this software. The specific disclaimers,which *
// * govern, are listed with their locations in: *
// * http://cern.ch/geant4/license *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. *
// * *
// * This code implementation is the intellectual property of the *
// * GEANT4 collaboration. *
// * By copying, distributing or modifying the Program (or any work *
// * based on the Program) you indicate your acceptance of this *
// * statement, and all its terms. *
// ********************************************************************
//
// $Id: G4PhysicalVolumeSearchScene.icc,v 1.3 1999/12/15 14:54:30 gunter Exp $
// GEANT4 tag $Name: geant4-03-01 $
//
// $Id: G4PhysicalVolumeSearchScene.icc,v 1.3.4.1 2001/06/28 19:16:19 gunter Exp $
// GEANT4 tag $Name: $
//
//
// John Allison 10th August 1998.
@@ -0,0 +1,76 @@
//
// ********************************************************************
// * DISCLAIMER *
// * *
// * The following disclaimer summarizes all the specific disclaimers *
// * of contributors to this software. The specific disclaimers,which *
// * govern, are listed with their locations in: *
// * http://cern.ch/geant4/license *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. *
// * *
// * This code implementation is the intellectual property of the *
// * GEANT4 collaboration. *
// * By copying, distributing or modifying the Program (or any work *
// * based on the Program) you indicate your acceptance of this *
// * statement, and all its terms. *
// ********************************************************************
//
//
// $Id: G4TextModel.hh,v 1.1.2.1 2001/06/28 19:16:19 gunter Exp $
// GEANT4 tag $Name: $
//
//
// John Allison 3rd April 2001
//
// Class Description:
//
// Model which knows how to draw text.
//
// For access to base class information, e.g., modeling parameters,
// use GetModelingParameters() inherited from G4VModel. See Class
// Description of the base class G4VModel.
#ifndef G4TEXTMODEL_HH
#define G4TEXTMODEL_HH
#include "G4VModel.hh"
#include "G4Text.hh"
class G4TextModel: public G4VModel {
public: // With description
G4TextModel (const G4Text&);
virtual ~G4TextModel ();
virtual void DescribeYourselfTo (G4VGraphicsScene&);
// The main task of a model is to describe itself to the scene.
virtual G4String GetCurrentDescription () const;
// A description which depends on the current state of the model.
virtual G4String GetCurrentTag () const;
// A tag which depends on the current state of the model.
virtual G4bool Validate ();
// Validate, but allow internal changes (hence non-const function).
private:
// Private copy contructor and assignmen to forbid uset...
G4TextModel (const G4TextModel&);
G4TextModel& operator = (const G4TextModel&);
G4Text fText;
};
#include "G4TextModel.icc"
#endif
@@ -0,0 +1,37 @@
//
// ********************************************************************
// * DISCLAIMER *
// * *
// * The following disclaimer summarizes all the specific disclaimers *
// * of contributors to this software. The specific disclaimers,which *
// * govern, are listed with their locations in: *
// * http://cern.ch/geant4/license *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. *
// * *
// * This code implementation is the intellectual property of the *
// * GEANT4 collaboration. *
// * By copying, distributing or modifying the Program (or any work *
// * based on the Program) you indicate your acceptance of this *
// * statement, and all its terms. *
// ********************************************************************
//
//
// $Id: G4TextModel.icc,v 1.1.2.1 2001/06/28 19:16:19 gunter Exp $
// GEANT4 tag $Name: $
inline G4String G4TextModel::GetCurrentTag () const {
return fGlobalTag;
}
inline G4String G4TextModel::GetCurrentDescription () const {
return fGlobalDescription;
}
inline G4bool G4TextModel::Validate () {
return true;
}
@@ -1,12 +1,28 @@
// This code implementation is the intellectual property of
// the GEANT4 collaboration.
//
// By copying, distributing or modifying the Program (or any work
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
// ********************************************************************
// * DISCLAIMER *
// * *
// * The following disclaimer summarizes all the specific disclaimers *
// * of contributors to this software. The specific disclaimers,which *
// * govern, are listed with their locations in: *
// * http://cern.ch/geant4/license *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. *
// * *
// * This code implementation is the intellectual property of the *
// * GEANT4 collaboration. *
// * By copying, distributing or modifying the Program (or any work *
// * based on the Program) you indicate your acceptance of this *
// * statement, and all its terms. *
// ********************************************************************
//
// $Id: G4TrajectoriesModel.hh,v 1.4 1999/12/15 14:54:30 gunter Exp $
// GEANT4 tag $Name: geant4-03-01 $
//
// $Id: G4TrajectoriesModel.hh,v 1.4.4.1 2001/06/28 19:16:19 gunter Exp $
// GEANT4 tag $Name: $
//
//
// John Allison 26th August 1998.
@@ -1,12 +1,28 @@
// This code implementation is the intellectual property of
// the GEANT4 collaboration.
//
// By copying, distributing or modifying the Program (or any work
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
// ********************************************************************
// * DISCLAIMER *
// * *
// * The following disclaimer summarizes all the specific disclaimers *
// * of contributors to this software. The specific disclaimers,which *
// * govern, are listed with their locations in: *
// * http://cern.ch/geant4/license *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. *
// * *
// * This code implementation is the intellectual property of the *
// * GEANT4 collaboration. *
// * By copying, distributing or modifying the Program (or any work *
// * based on the Program) you indicate your acceptance of this *
// * statement, and all its terms. *
// ********************************************************************
//
// $Id: G4TrajectoriesModel.icc,v 1.4 1999/12/15 14:54:31 gunter Exp $
// GEANT4 tag $Name: geant4-03-01 $
//
// $Id: G4TrajectoriesModel.icc,v 1.4.4.1 2001/06/28 19:16:19 gunter Exp $
// GEANT4 tag $Name: $
inline G4String G4TrajectoriesModel::GetCurrentTag () const {
return fGlobalTag;
@@ -1,12 +1,28 @@
// This code implementation is the intellectual property of
// the GEANT4 collaboration.
//
// By copying, distributing or modifying the Program (or any work
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
// ********************************************************************
// * DISCLAIMER *
// * *
// * The following disclaimer summarizes all the specific disclaimers *
// * of contributors to this software. The specific disclaimers,which *
// * govern, are listed with their locations in: *
// * http://cern.ch/geant4/license *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. *
// * *
// * This code implementation is the intellectual property of the *
// * GEANT4 collaboration. *
// * By copying, distributing or modifying the Program (or any work *
// * based on the Program) you indicate your acceptance of this *
// * statement, and all its terms. *
// ********************************************************************
//
// $Id: G4VModel.hh,v 1.7 2001/02/23 15:43:33 johna Exp $
// GEANT4 tag $Name: geant4-03-01 $
//
// $Id: G4VModel.hh,v 1.8.2.1 2001/06/28 19:16:19 gunter Exp $
// GEANT4 tag $Name: $
//
//
// John Allison 31st December 1997.
@@ -75,9 +91,9 @@ protected:
G4String fGlobalTag;
G4String fGlobalDescription;
const G4ModelingParameters* fpMP;
G4VisExtent fExtent;
G4Transform3D fTransform;
const G4ModelingParameters* fpMP;
private:
@@ -1,12 +1,28 @@
// This code implementation is the intellectual property of
// the GEANT4 collaboration.
//
// By copying, distributing or modifying the Program (or any work
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
// ********************************************************************
// * DISCLAIMER *
// * *
// * The following disclaimer summarizes all the specific disclaimers *
// * of contributors to this software. The specific disclaimers,which *
// * govern, are listed with their locations in: *
// * http://cern.ch/geant4/license *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. *
// * *
// * This code implementation is the intellectual property of the *
// * GEANT4 collaboration. *
// * By copying, distributing or modifying the Program (or any work *
// * based on the Program) you indicate your acceptance of this *
// * statement, and all its terms. *
// ********************************************************************
//
// $Id: G4VModel.icc,v 1.6 2001/02/23 15:43:34 johna Exp $
// GEANT4 tag $Name: geant4-03-01 $
//
// $Id: G4VModel.icc,v 1.6.2.1 2001/06/28 19:16:19 gunter Exp $
// GEANT4 tag $Name: $
//
//
// John Allison 31st December 1997.
@@ -1,80 +0,0 @@
// This code implementation is the intellectual property of
// the GEANT4 collaboration.
//
// By copying, distributing or modifying the Program (or any work
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: G4VTreeGraphicsScene.hh,v 1.1 2000/05/22 07:39:25 johna Exp $
// GEANT4 tag $Name: geant4-03-01 $
//
//
// John Allison 18th May 2000
// An artificial graphics scene to find dump geometry hierarchy.
#ifndef G4VTREEGRAPHICSSCENE_HH
#define G4VTREEGRAPHICSSCENE_HH
#include "G4VGraphicsScene.hh"
#include "G4VisExtent.hh"
#include "G4Box.hh"
#include "G4Cons.hh"
#include "G4Tubs.hh"
#include "G4Trd.hh"
#include "G4Trap.hh"
#include "G4Sphere.hh"
#include "G4Para.hh"
#include "G4Torus.hh"
#include "G4Polycone.hh"
#include "G4Polyhedra.hh"
#include "G4VPhysicalVolume.hh"
#include "G4LogicalVolume.hh"
class G4VTreeGraphicsScene: public G4VGraphicsScene {
public:
G4VTreeGraphicsScene();
virtual ~G4VTreeGraphicsScene ();
void AddThis (const G4Box& s) {Dump (s);}
void AddThis (const G4Cons & s) {Dump (s);}
void AddThis (const G4Tubs& s) {Dump (s);}
void AddThis (const G4Trd& s) {Dump (s);}
void AddThis (const G4Trap& s) {Dump (s);}
void AddThis (const G4Sphere& s) {Dump (s);}
void AddThis (const G4Para& s) {Dump (s);}
void AddThis (const G4Torus& s) {Dump (s);}
void AddThis (const G4Polycone& s) {Dump (s);}
void AddThis (const G4Polyhedra& s) {Dump (s);}
void AddThis (const G4VSolid& s) {Dump (s);}
void PreAddThis (const G4Transform3D& objectTransformation,
const G4VisAttributes&);
void PostAddThis ();
void EstablishSpecials (G4PhysicalVolumeModel&);
G4int GetFoundDepth () const;
G4VPhysicalVolume* GetFoundVolume () const;
const G4Transform3D& GetFoundTransformation () const;
////////////////////////////////////////////////////////////////
// Functions not used but required by the abstract interface.
virtual void BeginPrimitives (const G4Transform3D& objectTransformation) {}
virtual void EndPrimitives () {}
virtual void AddPrimitive (const G4Polyline&) {}
virtual void AddPrimitive (const G4Text&) {}
virtual void AddPrimitive (const G4Circle&) {}
virtual void AddPrimitive (const G4Square&) {}
virtual void AddPrimitive (const G4Polymarker&) {}
virtual void AddPrimitive (const G4Polyhedron&) {}
virtual void AddPrimitive (const G4NURBS&) {}
protected:
void Dump (const G4VSolid&);
G4int fCurrentDepth; // Current depth of geom. hierarchy.
G4VPhysicalVolume* fpCurrentPV; // Current physical volume.
G4LogicalVolume* fpCurrentLV; // Current logical volume.
const G4Transform3D* fpCurrentObjectTransformation;
};
#include "G4VTreeGraphicsScene.icc"
#endif
@@ -1,21 +0,0 @@
// This code implementation is the intellectual property of
// the GEANT4 collaboration.
//
// By copying, distributing or modifying the Program (or any work
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: G4VTreeGraphicsScene.icc,v 1.1 2000/05/22 07:39:32 johna Exp $
// GEANT4 tag $Name: geant4-03-01 $
//
//
// John Allison 18th May 2000
// An artificial graphics scene to find dump geometry hierarchy.
inline void G4VTreeGraphicsScene::PreAddThis
(const G4Transform3D& objectTransformation,
const G4VisAttributes&) {
fpCurrentObjectTransformation = &objectTransformation;
}
inline void G4VTreeGraphicsScene::PostAddThis () {}
@@ -0,0 +1,77 @@
//
// ********************************************************************
// * DISCLAIMER *
// * *
// * The following disclaimer summarizes all the specific disclaimers *
// * of contributors to this software. The specific disclaimers,which *
// * govern, are listed with their locations in: *
// * http://cern.ch/geant4/license *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. *
// * *
// * This code implementation is the intellectual property of the *
// * GEANT4 collaboration. *
// * By copying, distributing or modifying the Program (or any work *
// * based on the Program) you indicate your acceptance of this *
// * statement, and all its terms. *
// ********************************************************************
//
//
// $Id: G4AxesModel.cc,v 1.2.2.1 2001/06/28 19:16:19 gunter Exp $
// GEANT4 tag $Name: $
//
//
// John Allison 3rd April 2001
// Model which knows how to draw axes.
#include "G4AxesModel.hh"
#include "G4ModelingParameters.hh"
#include "G4VGraphicsScene.hh"
#include "G4VisAttributes.hh"
#include "G4Polyline.hh"
#include "G4Colour.hh"
G4AxesModel::~G4AxesModel () {}
G4AxesModel::G4AxesModel
(G4double x0, G4double y0, G4double z0, G4double length):
fX0(x0), fY0(y0), fZ0(z0), fLength(length) {
fGlobalTag = "G4AxesModel";
fGlobalDescription = fGlobalTag;
}
void G4AxesModel::DescribeYourselfTo (G4VGraphicsScene& scene) {
G4Polyline x_axis, y_axis, z_axis;
G4Colour cx(1.0, 0.0, 0.0); // color for x-axis
G4Colour cy(0.0, 1.0, 0.0); // color for y-axis
G4Colour cz(0.0, 0.0, 1.0); // color for z-axis
G4VisAttributes ax(cx); // VA for x-axis
G4VisAttributes ay(cy); // VA for y-axis
G4VisAttributes az(cz); // VA for z-axis
//----- Draw x-axis
x_axis.SetVisAttributes(&ax);
x_axis.push_back(G4Point3D(fX0,fY0,fZ0));
x_axis.push_back(G4Point3D((fX0 + fLength),fY0,fZ0));
scene.AddPrimitive(x_axis);
//----- Draw y-axis
y_axis.SetVisAttributes(&ay);
y_axis.push_back(G4Point3D(fX0,fY0,fZ0));
y_axis.push_back(G4Point3D(fX0,(fY0 + fLength),fZ0));
scene.AddPrimitive(y_axis);
//----- Draw z-axis
z_axis.SetVisAttributes(&az);
z_axis.push_back(G4Point3D(fX0,fY0,fZ0));
z_axis.push_back(G4Point3D(fX0,fY0,(fZ0 + fLength)));
scene.AddPrimitive(z_axis);
}
@@ -1,12 +1,28 @@
// This code implementation is the intellectual property of
// the GEANT4 collaboration.
//
// By copying, distributing or modifying the Program (or any work
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
// ********************************************************************
// * DISCLAIMER *
// * *
// * The following disclaimer summarizes all the specific disclaimers *
// * of contributors to this software. The specific disclaimers,which *
// * govern, are listed with their locations in: *
// * http://cern.ch/geant4/license *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. *
// * *
// * This code implementation is the intellectual property of the *
// * GEANT4 collaboration. *
// * By copying, distributing or modifying the Program (or any work *
// * based on the Program) you indicate your acceptance of this *
// * statement, and all its terms. *
// ********************************************************************
//
// $Id: G4BoundingSphereScene.cc,v 1.4 2000/05/15 11:09:32 johna Exp $
// GEANT4 tag $Name: geant4-03-01 $
//
// $Id: G4BoundingSphereScene.cc,v 1.4.4.1 2001/06/28 19:16:20 gunter Exp $
// GEANT4 tag $Name: $
//
//
// John Allison 7th June 1997
@@ -1,12 +1,28 @@
// This code implementation is the intellectual property of
// the GEANT4 collaboration.
//
// By copying, distributing or modifying the Program (or any work
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
// ********************************************************************
// * DISCLAIMER *
// * *
// * The following disclaimer summarizes all the specific disclaimers *
// * of contributors to this software. The specific disclaimers,which *
// * govern, are listed with their locations in: *
// * http://cern.ch/geant4/license *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. *
// * *
// * This code implementation is the intellectual property of the *
// * GEANT4 collaboration. *
// * By copying, distributing or modifying the Program (or any work *
// * based on the Program) you indicate your acceptance of this *
// * statement, and all its terms. *
// ********************************************************************
//
// $Id: G4FlavoredParallelWorldModel.cc,v 1.4 1999/12/15 14:54:31 gunter Exp $
// GEANT4 tag $Name: geant4-03-01 $
//
// $Id: G4FlavoredParallelWorldModel.cc,v 1.4.4.1 2001/06/28 19:16:20 gunter Exp $
// GEANT4 tag $Name: $
//
// P. Mora de Freitas et M.Verderi - 19 June 1998.
// Model for flavored parallel world volumes.
@@ -1,12 +1,28 @@
// This code implementation is the intellectual property of
// the GEANT4 collaboration.
//
// By copying, distributing or modifying the Program (or any work
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
// ********************************************************************
// * DISCLAIMER *
// * *
// * The following disclaimer summarizes all the specific disclaimers *
// * of contributors to this software. The specific disclaimers,which *
// * govern, are listed with their locations in: *
// * http://cern.ch/geant4/license *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. *
// * *
// * This code implementation is the intellectual property of the *
// * GEANT4 collaboration. *
// * By copying, distributing or modifying the Program (or any work *
// * based on the Program) you indicate your acceptance of this *
// * statement, and all its terms. *
// ********************************************************************
//
// $Id: G4HitsModel.cc,v 1.4 1999/12/15 14:54:31 gunter Exp $
// GEANT4 tag $Name: geant4-03-01 $
//
// $Id: G4HitsModel.cc,v 1.4.4.1 2001/06/28 19:16:20 gunter Exp $
// GEANT4 tag $Name: $
//
//
// John Allison 26th August 1998.
@@ -1,12 +1,28 @@
// This code implementation is the intellectual property of
// the GEANT4 collaboration.
//
// By copying, distributing or modifying the Program (or any work
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
// ********************************************************************
// * DISCLAIMER *
// * *
// * The following disclaimer summarizes all the specific disclaimers *
// * of contributors to this software. The specific disclaimers,which *
// * govern, are listed with their locations in: *
// * http://cern.ch/geant4/license *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. *
// * *
// * This code implementation is the intellectual property of the *
// * GEANT4 collaboration. *
// * By copying, distributing or modifying the Program (or any work *
// * based on the Program) you indicate your acceptance of this *
// * statement, and all its terms. *
// ********************************************************************
//
// $Id: G4LogicalVolumeModel.cc,v 1.5 2000/04/12 13:02:40 johna Exp $
// GEANT4 tag $Name: geant4-03-01 $
//
// $Id: G4LogicalVolumeModel.cc,v 1.7.2.1 2001/06/28 19:16:20 gunter Exp $
// GEANT4 tag $Name: $
//
//
// John Allison 26th July 1999.
@@ -71,7 +87,7 @@ void G4LogicalVolumeModel::DescribeYourselfTo
G4DrawVoxels dv;
G4PlacedPolyhedronList* pPPL =
dv.CreatePlacedPolyhedra (fpTopPV -> GetLogicalVolume ());
for (int i = 0; i < pPPL -> entries (); i++) {
for (size_t i = 0; i < pPPL -> size (); i++) {
const G4Transform3D& transform = (*pPPL)[i].GetTransform ();
const G4Polyhedron& polyhedron = (*pPPL)[i].GetPolyhedron ();
sceneHandler.BeginPrimitives (transform);
@@ -1,12 +1,28 @@
// This code implementation is the intellectual property of
// the GEANT4 collaboration.
//
// By copying, distributing or modifying the Program (or any work
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
// ********************************************************************
// * DISCLAIMER *
// * *
// * The following disclaimer summarizes all the specific disclaimers *
// * of contributors to this software. The specific disclaimers,which *
// * govern, are listed with their locations in: *
// * http://cern.ch/geant4/license *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. *
// * *
// * This code implementation is the intellectual property of the *
// * GEANT4 collaboration. *
// * By copying, distributing or modifying the Program (or any work *
// * based on the Program) you indicate your acceptance of this *
// * statement, and all its terms. *
// ********************************************************************
//
// $Id: G4ModelingParameters.cc,v 1.4 1999/12/15 14:54:31 gunter Exp $
// GEANT4 tag $Name: geant4-03-01 $
//
// $Id: G4ModelingParameters.cc,v 1.4.4.1 2001/06/28 19:16:20 gunter Exp $
// GEANT4 tag $Name: $
//
//
// John Allison 31st December 1997.
@@ -1,12 +1,28 @@
// This code implementation is the intellectual property of
// the GEANT4 collaboration.
//
// By copying, distributing or modifying the Program (or any work
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
// ********************************************************************
// * DISCLAIMER *
// * *
// * The following disclaimer summarizes all the specific disclaimers *
// * of contributors to this software. The specific disclaimers,which *
// * govern, are listed with their locations in: *
// * http://cern.ch/geant4/license *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. *
// * *
// * This code implementation is the intellectual property of the *
// * GEANT4 collaboration. *
// * By copying, distributing or modifying the Program (or any work *
// * based on the Program) you indicate your acceptance of this *
// * statement, and all its terms. *
// ********************************************************************
//
// $Id: G4NullModel.cc,v 1.3 1999/12/15 14:54:32 gunter Exp $
// GEANT4 tag $Name: geant4-03-01 $
//
// $Id: G4NullModel.cc,v 1.3.4.1 2001/06/28 19:16:20 gunter Exp $
// GEANT4 tag $Name: $
//
//
// John Allison 4th April 1998.
@@ -1,12 +1,28 @@
// This code implementation is the intellectual property of
// the GEANT4 collaboration.
//
// By copying, distributing or modifying the Program (or any work
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
// ********************************************************************
// * DISCLAIMER *
// * *
// * The following disclaimer summarizes all the specific disclaimers *
// * of contributors to this software. The specific disclaimers,which *
// * govern, are listed with their locations in: *
// * http://cern.ch/geant4/license *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. *
// * *
// * This code implementation is the intellectual property of the *
// * GEANT4 collaboration. *
// * By copying, distributing or modifying the Program (or any work *
// * based on the Program) you indicate your acceptance of this *
// * statement, and all its terms. *
// ********************************************************************
//
// $Id: G4PhysicalVolumeModel.cc,v 1.14 2001/03/15 12:20:53 johna Exp $
// GEANT4 tag $Name: geant4-03-01 $
//
// $Id: G4PhysicalVolumeModel.cc,v 1.15.2.1 2001/06/28 19:16:20 gunter Exp $
// GEANT4 tag $Name: $
//
//
// John Allison 31st December 1997.
@@ -42,6 +58,7 @@ G4PhysicalVolumeModel::G4PhysicalVolumeModel
fCurrentDepth (0),
fpCurrentPV (0),
fpCurrentLV (0),
fCurtailDescent (false),
fpCurrentDepth (0),
fppCurrentPV (0),
fppCurrentLV (0)
@@ -317,6 +334,12 @@ void G4PhysicalVolumeModel::DescribeAndDescend
DescribeSolid (theNewAT, pSol, pVisAttribs, sceneHandler);
}
if (fCurtailDescent) {
fCurtailDescent = false;
// Reset for normal descending of next volume at this level.
return;
}
// First check if mother covers...
// This is only effective in surface drawing style, and then only if
@@ -1,12 +1,28 @@
// This code implementation is the intellectual property of
// the GEANT4 collaboration.
//
// By copying, distributing or modifying the Program (or any work
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
// ********************************************************************
// * DISCLAIMER *
// * *
// * The following disclaimer summarizes all the specific disclaimers *
// * of contributors to this software. The specific disclaimers,which *
// * govern, are listed with their locations in: *
// * http://cern.ch/geant4/license *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. *
// * *
// * This code implementation is the intellectual property of the *
// * GEANT4 collaboration. *
// * By copying, distributing or modifying the Program (or any work *
// * based on the Program) you indicate your acceptance of this *
// * statement, and all its terms. *
// ********************************************************************
//
// $Id: G4PhysicalVolumeSearchScene.cc,v 1.4 1999/12/15 14:54:32 gunter Exp $
// GEANT4 tag $Name: geant4-03-01 $
//
// $Id: G4PhysicalVolumeSearchScene.cc,v 1.5.2.1 2001/06/28 19:16:20 gunter Exp $
// GEANT4 tag $Name: $
//
//
// John Allison 10th August 1998.
@@ -50,16 +66,9 @@ void G4PhysicalVolumeSearchScene::FindVolume (const G4VSolid& solid) {
<< "\", copy no. " << fpCurrentPV -> GetCopyNo () << G4endl;
*******************************************/
if (fRequiredPhysicalVolumeName == "list") {
for (G4int i = 0; i < fCurrentDepth; i++ ) G4cout << " ";
G4cout << "\"" << fpCurrentPV -> GetName ()
<< "\", copy no. " << fpCurrentPV -> GetCopyNo ()
<< G4endl;
return;
}
if (fRequiredPhysicalVolumeName == fpCurrentPV -> GetName () &&
fRequiredCopyNo == fpCurrentPV -> GetCopyNo ()) {
(fRequiredCopyNo < 0 || // I.e., ignore negative request.
fRequiredCopyNo == fpCurrentPV -> GetCopyNo ())) {
// Current policy - take first one found!!
if (!fpFoundPV) { // i.e., if not already found.
fFoundDepth = fCurrentDepth;
@@ -71,9 +80,13 @@ void G4PhysicalVolumeSearchScene::FindVolume (const G4VSolid& solid) {
if (!fMultipleOccurrence) {
fMultipleOccurrence = true;
G4cout << "G4PhysicalVolumeSearchScene::FindVolume:"
<< "\n Required volume: \"" << fRequiredPhysicalVolumeName
<< "\", copy no. " << fRequiredCopyNo
<< " found more than once."
<< "\n Required volume: \""
<< fRequiredPhysicalVolumeName
<< "\"";
if (fRequiredCopyNo >= 0) {
G4cout << ", copy no. " << fRequiredCopyNo << ",";
}
G4cout << " found more than once."
"\n This function is not smart enough to distinguish identical"
"\n physical volumes which have different parentage. Besides,"
"\n it's tricky to specify in general; we plan a GUI to do this."
@@ -0,0 +1,45 @@
//
// ********************************************************************
// * DISCLAIMER *
// * *
// * The following disclaimer summarizes all the specific disclaimers *
// * of contributors to this software. The specific disclaimers,which *
// * govern, are listed with their locations in: *
// * http://cern.ch/geant4/license *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. *
// * *
// * This code implementation is the intellectual property of the *
// * GEANT4 collaboration. *
// * By copying, distributing or modifying the Program (or any work *
// * based on the Program) you indicate your acceptance of this *
// * statement, and all its terms. *
// ********************************************************************
//
//
// $Id: G4TextModel.cc,v 1.1.2.1 2001/06/28 19:16:20 gunter Exp $
// GEANT4 tag $Name: $
//
//
// John Allison 3rd April 2001
// Model which knows how to draw text.
#include "G4TextModel.hh"
#include "G4ModelingParameters.hh"
#include "G4VGraphicsScene.hh"
G4TextModel::~G4TextModel () {}
G4TextModel::G4TextModel (const G4Text& text): fText(text) {
fGlobalTag = "G4TextModel: " + fText.GetText();
fGlobalDescription = fGlobalTag;
}
void G4TextModel::DescribeYourselfTo (G4VGraphicsScene& scene) {
scene.AddPrimitive (fText);
}
@@ -1,12 +1,28 @@
// This code implementation is the intellectual property of
// the GEANT4 collaboration.
//
// By copying, distributing or modifying the Program (or any work
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
// ********************************************************************
// * DISCLAIMER *
// * *
// * The following disclaimer summarizes all the specific disclaimers *
// * of contributors to this software. The specific disclaimers,which *
// * govern, are listed with their locations in: *
// * http://cern.ch/geant4/license *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. *
// * *
// * This code implementation is the intellectual property of the *
// * GEANT4 collaboration. *
// * By copying, distributing or modifying the Program (or any work *
// * based on the Program) you indicate your acceptance of this *
// * statement, and all its terms. *
// ********************************************************************
//
// $Id: G4TrajectoriesModel.cc,v 1.6 1999/12/15 14:54:32 gunter Exp $
// GEANT4 tag $Name: geant4-03-01 $
//
// $Id: G4TrajectoriesModel.cc,v 1.6.4.1 2001/06/28 19:16:20 gunter Exp $
// GEANT4 tag $Name: $
//
//
// John Allison 26th August 1998.
+23 -7
View File
@@ -1,12 +1,28 @@
// This code implementation is the intellectual property of
// the GEANT4 collaboration.
//
// By copying, distributing or modifying the Program (or any work
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
// ********************************************************************
// * DISCLAIMER *
// * *
// * The following disclaimer summarizes all the specific disclaimers *
// * of contributors to this software. The specific disclaimers,which *
// * govern, are listed with their locations in: *
// * http://cern.ch/geant4/license *
// * *
// * Neither the authors of this software system, nor their employing *
// * institutes,nor the agencies providing financial support for this *
// * work make any representation or warranty, express or implied, *
// * regarding this software system or assume any liability for its *
// * use. *
// * *
// * This code implementation is the intellectual property of the *
// * GEANT4 collaboration. *
// * By copying, distributing or modifying the Program (or any work *
// * based on the Program) you indicate your acceptance of this *
// * statement, and all its terms. *
// ********************************************************************
//
// $Id: G4VModel.cc,v 1.5 2001/02/03 18:40:04 johna Exp $
// GEANT4 tag $Name: geant4-03-01 $
//
// $Id: G4VModel.cc,v 1.5.2.1 2001/06/28 19:16:20 gunter Exp $
// GEANT4 tag $Name: $
//
//
// John Allison 31st December 1997.
@@ -1,43 +0,0 @@
// This code implementation is the intellectual property of
// the GEANT4 collaboration.
//
// By copying, distributing or modifying the Program (or any work
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: G4VTreeGraphicsScene.cc,v 1.1 2000/05/22 07:39:41 johna Exp $
// GEANT4 tag $Name: geant4-03-01 $
//
//
// John Allison 18th May 2000
// An artificial graphics scene to find dump geometry hierarchy.
#include "G4VTreeGraphicsScene.hh"
#include "G4VSolid.hh"
#include "G4Vector3D.hh"
#include "G4PhysicalVolumeModel.hh"
G4VTreeGraphicsScene::G4VTreeGraphicsScene():
fCurrentDepth (0),
fpCurrentPV (0),
fpCurrentLV (0),
fpCurrentObjectTransformation (0)
{}
G4VTreeGraphicsScene::~G4VTreeGraphicsScene () {}
void G4VTreeGraphicsScene::EstablishSpecials
(G4PhysicalVolumeModel& pvModel) {
pvModel.DefinePointersToWorkingSpace (&fCurrentDepth,
&fpCurrentPV,
&fpCurrentLV);
}
void G4VTreeGraphicsScene::Dump (const G4VSolid& solid) {
for (G4int i = 0; i < fCurrentDepth; i++ ) G4cout << " ";
G4cout << "\"" << fpCurrentPV -> GetName ()
<< "\", copy no. " << fpCurrentPV -> GetCopyNo ()
<< G4endl;
return;
}