Import Geant4 9.6.0 source tree

This commit is contained in:
Gabriele Cosmo
2016-06-09 17:01:34 +02:00
parent b1eb5424d2
commit e2d2f9810a
10384 changed files with 698580 additions and 628834 deletions
@@ -23,26 +23,8 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
//
// **********************************************************************
// * *
// * GEANT 4 tutorial 1 *
// * *
// * MODULE: A01AnalysisManager.cc *
// * ------- *
// * *
// * Version: 0.1 *
// * Date: January 28 2002 *
// * Author: T.Johnson *
// * Organisation: SLAC *
// * *
// **********************************************************************
//
// CHANGE HISTORY
// --------------
//
//
// **********************************************************************
/// \file analysis/A01/include/A01AnalysisManager.hh
/// \brief Definition of the A01AnalysisManager class
#ifndef A01AnalysisManager_h
#define A01AnalysisManager_h 1
@@ -73,15 +55,14 @@ public:
IPlotter* getPlotter();
private:
A01AnalysisManager();
static A01AnalysisManager* instance;
static A01AnalysisManager* fInstance;
IAnalysisFactory* analysisFactory;
IHistogramFactory* hFactory;
IAnalysisFactory* fAnalysisFactory;
IHistogramFactory* fFactory;
ITupleFactory* tFactory;
IPlotter* plotter;
ITree* tree;
IPlotter* fPlotter;
ITree* fTree;
};
#endif
@@ -23,7 +23,10 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: A01CellParameterisation.hh,v 1.4 2006-06-29 16:30:29 gunter Exp $
/// \file analysis/A01/include/A01CellParameterisation.hh
/// \brief Definition of the A01CellParameterisation class
//
// $Id$
// --------------------------------------------------------------
//
@@ -43,8 +46,8 @@ class A01CellParameterisation : public G4VPVParameterisation
(const G4int copyNo,G4VPhysicalVolume *physVol) const;
private:
G4double xCell[80];
G4double yCell[80];
G4double fXCell[80];
G4double fYCell[80];
};
#endif
@@ -23,7 +23,10 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: A01DetectorConstMessenger.hh,v 1.4 2006-06-29 16:30:32 gunter Exp $
/// \file analysis/A01/include/A01DetectorConstMessenger.hh
/// \brief Definition of the A01DetectorConstMessenger class
//
// $Id$
// --------------------------------------------------------------
//
#ifndef A01DetectorConstMessenger_h
@@ -42,17 +45,14 @@ class A01DetectorConstMessenger: public G4UImessenger
A01DetectorConstMessenger(A01DetectorConstruction* mpga);
~A01DetectorConstMessenger();
public:
void SetNewValue(G4UIcommand * command,G4String newValues);
G4String GetCurrentValue(G4UIcommand * command);
virtual void SetNewValue(G4UIcommand * command,G4String newValues);
virtual G4String GetCurrentValue(G4UIcommand * command);
private:
A01DetectorConstruction * target;
private: //commands
G4UIdirectory * mydetDirectory;
G4UIcmdWithADoubleAndUnit* armCmd;
A01DetectorConstruction * fTarget;
G4UIdirectory * fMydetDirectory;
G4UIcmdWithADoubleAndUnit* fArmCmd;
};
#endif
@@ -23,7 +23,10 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: A01DetectorConstruction.hh,v 1.6 2009-11-21 00:22:55 perl Exp $
/// \file analysis/A01/include/A01DetectorConstruction.hh
/// \brief Definition of the A01DetectorConstruction class
//
// $Id$
// --------------------------------------------------------------
//
@@ -48,45 +51,39 @@ class A01DetectorConstruction : public G4VUserDetectorConstruction
A01DetectorConstruction();
virtual ~A01DetectorConstruction();
public:
virtual G4VPhysicalVolume* Construct();
void SetArmAngle(G4double val);
inline G4double GetArmAngle() { return armAngle; }
inline G4double GetArmAngle() { return fArmAngle; }
private:
void ConstructMaterials();
void DestroyMaterials();
void DumpGeometricalTree(G4VPhysicalVolume* aVolume,G4int depth=0);
private:
A01DetectorConstMessenger* messenger;
A01MagneticField* magneticField;
G4FieldManager* fieldMgr;
A01DetectorConstMessenger* fMessenger;
A01MagneticField* fMagneticField;
G4FieldManager* fFieldMgr;
G4Material* air;
G4Material* argonGas;
G4Material* scintillator;
G4Material* CsI;
//@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
G4Material* lead;
//@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
G4Material* fAir;
G4Material* fArgonGas;
G4Material* fScintillator;
G4Material* fCsI;
G4Material* fLead;
G4VisAttributes* worldVisAtt;
G4VisAttributes* magneticVisAtt;
G4VisAttributes* armVisAtt;
G4VisAttributes* hodoscopeVisAtt;
G4VisAttributes* chamberVisAtt;
G4VisAttributes* wirePlaneVisAtt;
G4VisAttributes* EMcalorimeterVisAtt;
G4VisAttributes* cellVisAtt;
//@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
G4VisAttributes* HadCalorimeterVisAtt;
G4VisAttributes* HadCalorimeterCellVisAtt;
//@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
G4VisAttributes* fWorldVisAtt;
G4VisAttributes* fMagneticVisAtt;
G4VisAttributes* fArmVisAtt;
G4VisAttributes* fHodoscopeVisAtt;
G4VisAttributes* fChamberVisAtt;
G4VisAttributes* fWirePlaneVisAtt;
G4VisAttributes* fEMcalorimeterVisAtt;
G4VisAttributes* fCellVisAtt;
G4VisAttributes* fHadCalorimeterVisAtt;
G4VisAttributes* fHadCalorimeterCellVisAtt;
G4double armAngle;
G4RotationMatrix* armRotation;
G4VPhysicalVolume* secondArmPhys;
G4double fArmAngle;
G4RotationMatrix* fArmRotation;
G4VPhysicalVolume* fSecondArmPhys;
};
#endif
@@ -23,7 +23,10 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: A01DriftChamber.hh,v 1.4 2006-06-29 16:30:53 gunter Exp $
/// \file analysis/A01/include/A01DriftChamber.hh
/// \brief Definition of the A01DriftChamber class
//
// $Id$
// --------------------------------------------------------------
//
#ifndef A01DriftChamber_h
@@ -37,7 +40,6 @@ class G4TouchableHistory;
class A01DriftChamber : public G4VSensitiveDetector
{
public:
A01DriftChamber(G4String name);
virtual ~A01DriftChamber();
@@ -47,12 +49,9 @@ class A01DriftChamber : public G4VSensitiveDetector
virtual void EndOfEvent(G4HCofThisEvent*HCE);
private:
A01DriftChamberHitsCollection * hitsCollection;
G4int HCID;
A01DriftChamberHitsCollection * fHitsCollection;
G4int fHCID;
};
#endif
@@ -23,7 +23,10 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: A01DriftChamberHit.hh,v 1.5 2006-06-29 16:30:55 gunter Exp $
/// \file analysis/A01/include/A01DriftChamberHit.hh
/// \brief Definition of the A01DriftChamberHit class
//
// $Id$
// --------------------------------------------------------------
//
#ifndef A01DriftChamberHit_h
@@ -43,7 +46,6 @@ class G4AttValue;
class A01DriftChamberHit : public G4VHit
{
public:
A01DriftChamberHit();
A01DriftChamberHit(G4int z);
virtual ~A01DriftChamberHit();
@@ -54,8 +56,8 @@ class A01DriftChamberHit : public G4VHit
inline void *operator new(size_t);
inline void operator delete(void *aHit);
inline float x();
inline float y();
inline float x();
inline float y();
virtual void Draw();
virtual const std::map<G4String,G4AttDef>* GetAttDefs() const;
@@ -63,20 +65,20 @@ class A01DriftChamberHit : public G4VHit
virtual void Print();
private:
G4int layerID;
G4double time;
G4ThreeVector localPos;
G4ThreeVector worldPos;
G4int fLayerID;
G4double fTime;
G4ThreeVector fLocalPos;
G4ThreeVector fWorldPos;
public:
inline void SetLayerID(G4int z) { layerID = z; }
inline G4int GetLayerID() const { return layerID; }
inline void SetTime(G4double t) { time = t; }
inline G4double GetTime() const { return time; }
inline void SetLocalPos(G4ThreeVector xyz) { localPos = xyz; }
inline G4ThreeVector GetLocalPos() const { return localPos; }
inline void SetWorldPos(G4ThreeVector xyz) { worldPos = xyz; }
inline G4ThreeVector GetWorldPos() const { return worldPos; }
inline void SetLayerID(G4int z) { fLayerID = z; }
inline G4int GetLayerID() const { return fLayerID; }
inline void SetTime(G4double t) { fTime = t; }
inline G4double GetTime() const { return fTime; }
inline void SetLocalPos(G4ThreeVector xyz) { fLocalPos = xyz; }
inline G4ThreeVector GetLocalPos() const { return fLocalPos; }
inline void SetWorldPos(G4ThreeVector xyz) { fWorldPos = xyz; }
inline G4ThreeVector GetWorldPos() const { return fWorldPos; }
};
typedef G4THitsCollection<A01DriftChamberHit> A01DriftChamberHitsCollection;
@@ -23,7 +23,10 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: A01EMPhysics.hh,v 1.7 2009-11-21 01:00:19 perl Exp $
/// \file analysis/A01/include/A01EMPhysics.hh
/// \brief Definition of the A01EMPhysics class
//
// $Id$
// --------------------------------------------------------------
//
// 09-Oct-2003 Chhange gamma, electron, positorn process T. Koi
@@ -51,7 +54,6 @@ class A01EMPhysics : public G4VPhysicsConstructor
A01EMPhysics(const G4String& name ="EM");
virtual ~A01EMPhysics();
public:
// This method will be invoked in the Construct() method.
// each particle type will be instantiated
virtual void ConstructParticle(){;};
@@ -60,10 +62,6 @@ class A01EMPhysics : public G4VPhysicsConstructor
// each physics process will be instantiated and
// registered to the process manager of each particle type
virtual void ConstructProcess();
protected:
};
#endif
@@ -23,7 +23,10 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: A01EmCalorimeter.hh,v 1.4 2006-06-29 16:31:00 gunter Exp $
/// \file analysis/A01/include/A01EmCalorimeter.hh
/// \brief Definition of the A01EmCalorimeter class
//
// $Id$
// --------------------------------------------------------------
//
#ifndef A01EmCalorimeter_h
@@ -47,8 +50,8 @@ class A01EmCalorimeter : public G4VSensitiveDetector
virtual void EndOfEvent(G4HCofThisEvent*HCE);
private:
A01EmCalorimeterHitsCollection* hitsCollection;
G4int HCID;
A01EmCalorimeterHitsCollection* fHitsCollection;
G4int fHCID;
};
@@ -23,7 +23,10 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: A01EmCalorimeterHit.hh,v 1.5 2006-06-29 16:31:02 gunter Exp $
/// \file analysis/A01/include/A01EmCalorimeterHit.hh
/// \brief Definition of the A01EmCalorimeterHit class
//
// $Id$
// --------------------------------------------------------------
//
#ifndef A01EmCalorimeterHit_h
@@ -43,7 +46,6 @@ class G4AttValue;
class A01EmCalorimeterHit : public G4VHit
{
public:
A01EmCalorimeterHit();
A01EmCalorimeterHit(G4int z);
virtual ~A01EmCalorimeterHit();
@@ -60,24 +62,24 @@ class A01EmCalorimeterHit : public G4VHit
virtual void Print();
private:
G4int cellID;
G4double edep;
G4ThreeVector pos;
G4RotationMatrix rot;
const G4LogicalVolume* pLogV;
G4int fCellID;
G4double fEdep;
G4ThreeVector fPos;
G4RotationMatrix fRot;
const G4LogicalVolume* fPLogV;
public:
inline void SetCellID(G4int z) { cellID = z; }
inline G4int GetCellID() const { return cellID; }
inline void SetEdep(G4double de) { edep = de; }
inline void AddEdep(G4double de) { edep += de; }
inline G4double GetEdep() const { return edep; }
inline void SetPos(G4ThreeVector xyz) { pos = xyz; }
inline G4ThreeVector GetPos() const { return pos; }
inline void SetRot(G4RotationMatrix rmat) { rot = rmat; }
inline G4RotationMatrix GetRot() const { return rot; }
inline void SetLogV(G4LogicalVolume* val) { pLogV = val; }
inline const G4LogicalVolume* GetLogV() const { return pLogV; }
inline void SetCellID(G4int z) { fCellID = z; }
inline G4int GetCellID() const { return fCellID; }
inline void SetEdep(G4double de) { fEdep = de; }
inline void AddEdep(G4double de) { fEdep += de; }
inline G4double GetEdep() const { return fEdep; }
inline void SetPos(G4ThreeVector xyz) { fPos = xyz; }
inline G4ThreeVector GetPos() const { return fPos; }
inline void SetRot(G4RotationMatrix rmat) { fRot = rmat; }
inline G4RotationMatrix GetRot() const { return fRot; }
inline void SetLogV(G4LogicalVolume* val) { fPLogV = val; }
inline const G4LogicalVolume* GetLogV() const { return fPLogV; }
};
typedef G4THitsCollection<A01EmCalorimeterHit> A01EmCalorimeterHitsCollection;
@@ -23,7 +23,10 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: A01EventAction.hh,v 1.6 2006-06-29 16:31:04 gunter Exp $
/// \file analysis/A01/include/A01EventAction.hh
/// \brief Definition of the A01EventAction class
//
// $Id$
// --------------------------------------------------------------
//
#ifndef A01EventAction_h
@@ -46,34 +49,33 @@ class A01EventAction : public G4UserEventAction
A01EventAction();
virtual ~A01EventAction();
public:
virtual void BeginOfEventAction(const G4Event*);
virtual void EndOfEventAction(const G4Event*);
private:
G4int HHC1ID;
G4int HHC2ID;
G4int DHC1ID;
G4int DHC2ID;
G4int ECHCID;
G4int HCHCID;
G4int fHHC1ID;
G4int fHHC2ID;
G4int fDHC1ID;
G4int fDHC2ID;
G4int fECHCID;
G4int fHCHCID;
A01EventActionMessenger* messenger;
G4int verboseLevel;
A01EventActionMessenger* fMessenger;
G4int fVerboseLevel;
#ifdef G4ANALYSIS_USE
IHistogram1D* dc1Hits;
IHistogram1D* dc2Hits;
ICloud2D* dc1XY;
ICloud2D* dc2XY;
ICloud2D* evstof;
ITuple* tuple;
IPlotter* plotter;
IHistogram1D* fDc1Hits;
IHistogram1D* fDc2Hits;
ICloud2D* fDc1XY;
ICloud2D* fDc2XY;
ICloud2D* fEvstof;
ITuple* fTuple;
IPlotter* fPlotter;
#endif // G4ANALYSIS_USE
public:
inline void SetVerbose(G4int val) { verboseLevel = val; }
inline G4int GetVerbose() const { return verboseLevel; }
inline void SetVerbose(G4int val) { fVerboseLevel = val; }
inline G4int GetVerbose() const { return fVerboseLevel; }
};
#endif
@@ -23,7 +23,10 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: A01EventActionMessenger.hh,v 1.6 2006-06-29 16:31:06 gunter Exp $
/// \file analysis/A01/include/A01EventActionMessenger.hh
/// \brief Definition of the A01EventActionMessenger class
//
// $Id$
// --------------------------------------------------------------
//
#ifndef A01EventActionMessenger_h
@@ -39,18 +42,15 @@ class A01EventActionMessenger: public G4UImessenger
{
public:
A01EventActionMessenger(A01EventAction* mpga);
~A01EventActionMessenger();
virtual ~A01EventActionMessenger();
public:
void SetNewValue(G4UIcommand * command,G4String newValues);
G4String GetCurrentValue(G4UIcommand * command);
virtual void SetNewValue(G4UIcommand * command,G4String newValues);
virtual G4String GetCurrentValue(G4UIcommand * command);
private:
A01EventAction* target;
private: //commands
G4UIcmdWithAnInteger* verboseCmd;
A01EventAction* fTarget;
G4UIcmdWithAnInteger* fVerboseCmd;
};
#endif
@@ -23,7 +23,10 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: A01GeneralPhysics.hh,v 1.5 2006-06-29 16:31:08 gunter Exp $
/// \file analysis/A01/include/A01GeneralPhysics.hh
/// \brief Definition of the A01GeneralPhysics class
//
// $Id$
// --------------------------------------------------------------
//
@@ -50,10 +53,8 @@ class A01GeneralPhysics : public G4VPhysicsConstructor
// each physics process will be instantiated and
// registered to the process manager of each particle type
virtual void ConstructProcess();
};
#endif
@@ -23,7 +23,10 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: A01HadCalorimeter.hh,v 1.4 2006-06-29 16:31:10 gunter Exp $
/// \file analysis/A01/include/A01HadCalorimeter.hh
/// \brief Definition of the A01HadCalorimeter class
//
// $Id$
// --------------------------------------------------------------
//
#ifndef A01HadCalorimeter_h
@@ -47,12 +50,9 @@ class A01HadCalorimeter : public G4VSensitiveDetector
virtual void EndOfEvent(G4HCofThisEvent*HCE);
private:
A01HadCalorimeterHitsCollection* hitsCollection;
G4int HCID;
A01HadCalorimeterHitsCollection* fHitsCollection;
G4int fHCID;
};
#endif
@@ -23,7 +23,10 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: A01HadCalorimeterHit.hh,v 1.5 2006-06-29 16:31:12 gunter Exp $
/// \file analysis/A01/include/A01HadCalorimeterHit.hh
/// \brief Definition of the A01HadCalorimeterHit class
//
// $Id$
// --------------------------------------------------------------
//
#ifndef A01HadCalorimeterHit_h
@@ -43,7 +46,6 @@ class G4AttValue;
class A01HadCalorimeterHit : public G4VHit
{
public:
A01HadCalorimeterHit();
A01HadCalorimeterHit(G4int iCol,G4int iRow);
virtual ~A01HadCalorimeterHit();
@@ -60,24 +62,24 @@ class A01HadCalorimeterHit : public G4VHit
virtual void Print();
private:
G4int columnID;
G4int rowID;
G4double edep;
G4ThreeVector pos;
G4RotationMatrix rot;
G4int fColumnID;
G4int fRowID;
G4double fEdep;
G4ThreeVector fPos;
G4RotationMatrix fRot;
public:
inline void SetColumnID(G4int z) { columnID = z; }
inline G4int GetColumnID() const { return columnID; }
inline void SetRowID(G4int z) { rowID = z; }
inline G4int GetRowID() const { return rowID; }
inline void SetEdep(G4double de) { edep = de; }
inline void AddEdep(G4double de) { edep += de; }
inline G4double GetEdep() const { return edep; }
inline void SetPos(G4ThreeVector xyz) { pos = xyz; }
inline G4ThreeVector GetPos() const { return pos; }
inline void SetRot(G4RotationMatrix rmat) { rot = rmat; }
inline G4RotationMatrix GetRot() const { return rot; }
inline void SetColumnID(G4int z) { fColumnID = z; }
inline G4int GetColumnID() const { return fColumnID; }
inline void SetRowID(G4int z) { fRowID = z; }
inline G4int GetRowID() const { return fRowID; }
inline void SetEdep(G4double de) { fEdep = de; }
inline void AddEdep(G4double de) { fEdep += de; }
inline G4double GetEdep() const { return fEdep; }
inline void SetPos(G4ThreeVector xyz) { fPos = xyz; }
inline G4ThreeVector GetPos() const { return fPos; }
inline void SetRot(G4RotationMatrix rmat) { fRot = rmat; }
inline G4RotationMatrix GetRot() const { return fRot; }
};
@@ -23,7 +23,10 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: A01HadronPhysics.hh,v 1.7 2009-11-21 01:00:19 perl Exp $
/// \file analysis/A01/include/A01HadronPhysics.hh
/// \brief Definition of the A01HadronPhysics class
//
// $Id$
// --------------------------------------------------------------
//
// 10-Oct-2003 Full Hadron Processes with Parameterization Model T. Koi
@@ -136,7 +139,6 @@ class A01HadronPhysics : public G4VPhysicsConstructor
A01HadronPhysics(const G4String& name="hadron");
virtual ~A01HadronPhysics();
public:
// This method will be invoked in the Construct() method.
// each particle type will be instantiated
virtual void ConstructParticle(){;};
@@ -145,11 +147,7 @@ class A01HadronPhysics : public G4VPhysicsConstructor
// each physics process will be instantiated and
// registered to the process manager of each particle type
virtual void ConstructProcess();
protected:
};
#endif
@@ -23,7 +23,10 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: A01Hodoscope.hh,v 1.4 2006-06-29 16:31:17 gunter Exp $
/// \file analysis/A01/include/A01Hodoscope.hh
/// \brief Definition of the A01Hodoscope class
//
// $Id$
// --------------------------------------------------------------
//
#ifndef A01Hodoscope_h
@@ -37,7 +40,6 @@ class G4TouchableHistory;
class A01Hodoscope : public G4VSensitiveDetector
{
public:
A01Hodoscope(G4String name);
virtual ~A01Hodoscope();
@@ -47,12 +49,9 @@ class A01Hodoscope : public G4VSensitiveDetector
virtual void EndOfEvent(G4HCofThisEvent*HCE);
private:
A01HodoscopeHitsCollection* hitsCollection;
G4int HCID;
A01HodoscopeHitsCollection* fHitsCollection;
G4int fHCID;
};
#endif
@@ -23,7 +23,10 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: A01HodoscopeHit.hh,v 1.5 2006-06-29 16:31:19 gunter Exp $
/// \file analysis/A01/include/A01HodoscopeHit.hh
/// \brief Definition of the A01HodoscopeHit class
//
// $Id$
// --------------------------------------------------------------
//
#ifndef A01HodoscopeHit_h
@@ -43,7 +46,6 @@ class G4AttValue;
class A01HodoscopeHit : public G4VHit
{
public:
A01HodoscopeHit(G4int i,G4double t);
virtual ~A01HodoscopeHit();
A01HodoscopeHit(const A01HodoscopeHit &right);
@@ -60,23 +62,22 @@ class A01HodoscopeHit : public G4VHit
void Print();
private:
G4int id;
G4double time;
G4ThreeVector pos;
G4RotationMatrix rot;
const G4LogicalVolume* pLogV;
G4int fId;
G4double fTime;
G4ThreeVector fPos;
G4RotationMatrix fRot;
const G4LogicalVolume* fPLogV;
public:
inline G4int GetID() const { return id; }
inline G4double GetTime() const { return time; }
inline void SetTime(G4double val) { time = val; }
inline void SetPos(G4ThreeVector xyz) { pos = xyz; }
inline G4ThreeVector GetPos() const { return pos; }
inline void SetRot(G4RotationMatrix rmat) { rot = rmat; }
inline G4RotationMatrix GetRot() const { return rot; }
inline void SetLogV(G4LogicalVolume* val) { pLogV = val; }
inline const G4LogicalVolume* GetLogV() const { return pLogV; }
inline G4int GetID() const { return fId; }
inline G4double GetTime() const { return fTime; }
inline void SetTime(G4double val) { fTime = val; }
inline void SetPos(G4ThreeVector xyz) { fPos = xyz; }
inline G4ThreeVector GetPos() const { return fPos; }
inline void SetRot(G4RotationMatrix rmat) { fRot = rmat; }
inline G4RotationMatrix GetRot() const { return fRot; }
inline void SetLogV(G4LogicalVolume* val) { fPLogV = val; }
inline const G4LogicalVolume* GetLogV() const { return fPLogV; }
};
typedef G4THitsCollection<A01HodoscopeHit> A01HodoscopeHitsCollection;
@@ -23,7 +23,10 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: A01IonPhysics.hh,v 1.8 2009-11-21 01:00:19 perl Exp $
/// \file analysis/A01/include/A01IonPhysics.hh
/// \brief Definition of the A01IonPhysics class
//
// $Id$
// --------------------------------------------------------------
// 05-Jan-2004 Add G4ionIonisation T. Koi
//
@@ -58,7 +61,6 @@ class A01IonPhysics : public G4VPhysicsConstructor
A01IonPhysics(const G4String& name="ion");
virtual ~A01IonPhysics();
public:
// This method will be invoked in the Construct() method.
// each particle type will be instantiated
virtual void ConstructParticle(){;};
@@ -67,10 +69,7 @@ class A01IonPhysics : public G4VPhysicsConstructor
// each physics process will be instantiated and
// registered to the process manager of each particle type
virtual void ConstructProcess();
protected:
};
#endif
@@ -23,7 +23,10 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: A01MagneticField.hh,v 1.5 2009-11-21 00:22:55 perl Exp $
/// \file analysis/A01/include/A01MagneticField.hh
/// \brief Definition of the A01MagneticField class
//
// $Id$
// --------------------------------------------------------------
//
@@ -38,17 +41,17 @@ class A01MagneticField : public G4MagneticField
{
public:
A01MagneticField();
~A01MagneticField();
virtual ~A01MagneticField();
virtual void GetFieldValue(const G4double Point[4],double *Bfield ) const;
private:
A01MagneticFieldMessenger* messenger;
G4double By;
A01MagneticFieldMessenger* fMessenger;
G4double fBy;
public:
inline void SetField(G4double val) { By = val; }
inline G4double GetField() const { return By; }
inline void SetField(G4double val) { fBy = val; }
inline G4double GetField() const { return fBy; }
};
#endif
@@ -23,7 +23,10 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: A01MagneticFieldMessenger.hh,v 1.4 2006-06-29 16:31:29 gunter Exp $
/// \file analysis/A01/include/A01MagneticFieldMessenger.hh
/// \brief Definition of the A01MagneticFieldMessenger class
//
// $Id$
// --------------------------------------------------------------
//
#ifndef A01MagneticFieldMessenger_h
@@ -39,17 +42,15 @@ class A01MagneticFieldMessenger: public G4UImessenger
{
public:
A01MagneticFieldMessenger(A01MagneticField* mpga);
~A01MagneticFieldMessenger();
virtual ~A01MagneticFieldMessenger();
public:
void SetNewValue(G4UIcommand * command,G4String newValues);
G4String GetCurrentValue(G4UIcommand * command);
virtual void SetNewValue(G4UIcommand * command,G4String newValues);
virtual G4String GetCurrentValue(G4UIcommand * command);
private:
A01MagneticField * target;
G4UIcmdWithADoubleAndUnit* fieldCmd;
A01MagneticField * fTarget;
G4UIcmdWithADoubleAndUnit* fFieldCmd;
};
#endif
@@ -23,7 +23,10 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: A01MuonPhysics.hh,v 1.8 2009-12-02 22:45:09 perl Exp $
/// \file analysis/A01/include/A01MuonPhysics.hh
/// \brief Definition of the A01MuonPhysics class
//
// $Id$
// --------------------------------------------------------------
//
// 09-Oct-2003 mu+- tau+- processes are changed by T. Koi
@@ -57,11 +60,7 @@ class A01MuonPhysics : public G4VPhysicsConstructor
// each physics process will be instantiated and
// registered to the process manager of each particle type
virtual void ConstructProcess();
protected:
};
#endif
@@ -23,7 +23,10 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: A01PhysicsList.hh,v 1.4 2006-06-29 16:31:33 gunter Exp $
/// \file analysis/A01/include/A01PhysicsList.hh
/// \brief Definition of the A01PhysicsList class
//
// $Id$
// --------------------------------------------------------------
//
#ifndef A01PhysicsList_h
@@ -38,14 +41,9 @@ public:
A01PhysicsList();
virtual ~A01PhysicsList();
public:
// SetCuts()
virtual void SetCuts();
};
#endif
@@ -23,7 +23,10 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: A01PrimaryGeneratorAction.hh,v 1.4 2006-06-29 16:31:35 gunter Exp $
/// \file analysis/A01/include/A01PrimaryGeneratorAction.hh
/// \brief Definition of the A01PrimaryGeneratorAction class
//
// $Id$
// --------------------------------------------------------------
//
@@ -47,29 +50,27 @@ class A01PrimaryGeneratorAction : public G4VUserPrimaryGeneratorAction
virtual void GeneratePrimaries(G4Event*);
private:
G4ParticleGun* particleGun;
A01PrimaryGeneratorMessenger* gunMessenger;
G4ParticleDefinition* positron;
G4ParticleDefinition* muon;
G4ParticleDefinition* pion;
G4ParticleDefinition* kaon;
G4ParticleDefinition* proton;
G4double momentum;
G4double sigmaMomentum;
G4double sigmaAngle;
G4bool randomizePrimary;
G4ParticleGun* fParticleGun;
A01PrimaryGeneratorMessenger* fGunMessenger;
G4ParticleDefinition* fPositron;
G4ParticleDefinition* fMuon;
G4ParticleDefinition* fPion;
G4ParticleDefinition* fKaon;
G4ParticleDefinition* fProton;
G4double fMomentum;
G4double fSigmaMomentum;
G4double fSigmaAngle;
G4bool fRandomizePrimary;
public:
inline void SetMomentum(G4double val) { momentum = val; }
inline G4double GetMomentum() const { return momentum; }
inline void SetSigmaMomentum(G4double val) { sigmaMomentum = val; }
inline G4double GetSigmaMomentum() const { return sigmaMomentum; }
inline void SetSigmaAngle(G4double val) { sigmaAngle = val; }
inline G4double GetSigmaAngle() const { return sigmaAngle; }
inline void SetRandomize(G4bool val) { randomizePrimary = val; }
inline G4bool GetRandomize() const { return randomizePrimary; }
inline void SetMomentum(G4double val) { fMomentum = val; }
inline G4double GetMomentum() const { return fMomentum; }
inline void SetSigmaMomentum(G4double val) { fSigmaMomentum = val; }
inline G4double GetSigmaMomentum() const { return fSigmaMomentum; }
inline void SetSigmaAngle(G4double val) { fSigmaAngle = val; }
inline G4double GetSigmaAngle() const { return fSigmaAngle; }
inline void SetRandomize(G4bool val) { fRandomizePrimary = val; }
inline G4bool GetRandomize() const { return fRandomizePrimary; }
};
#endif
@@ -23,7 +23,10 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
// $Id: A01PrimaryGeneratorMessenger.hh,v 1.4 2006-06-29 16:31:37 gunter Exp $
/// \file analysis/A01/include/A01PrimaryGeneratorMessenger.hh
/// \brief Definition of the A01PrimaryGeneratorMessenger class
//
// $Id$
// --------------------------------------------------------------
//
#ifndef A01PrimaryGeneratorMessenger_h
@@ -42,21 +45,17 @@ class A01PrimaryGeneratorMessenger: public G4UImessenger
A01PrimaryGeneratorMessenger(A01PrimaryGeneratorAction* mpga);
~A01PrimaryGeneratorMessenger();
public:
void SetNewValue(G4UIcommand * command,G4String newValues);
G4String GetCurrentValue(G4UIcommand * command);
private:
A01PrimaryGeneratorAction * target;
A01PrimaryGeneratorAction * fTarget;
private: //commands
G4UIcmdWithADoubleAndUnit* momentumCmd;
G4UIcmdWithADoubleAndUnit* sigmaMomCmd;
G4UIcmdWithADoubleAndUnit* sigmaAngCmd;
G4UIcmdWithABool* randomCmd;
G4UIcmdWithADoubleAndUnit* fMomentumCmd;
G4UIcmdWithADoubleAndUnit* fSigmaMomCmd;
G4UIcmdWithADoubleAndUnit* fSigmaAngCmd;
G4UIcmdWithABool* fRandomCmd;
};
#endif