Geant4.10
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions
LXeWLSFiber Class Reference

#include <LXeWLSFiber.hh>

Inheritance diagram for LXeWLSFiber:
G4PVPlacement G4VPhysicalVolume

Public Member Functions

 LXeWLSFiber (G4RotationMatrix *pRot, const G4ThreeVector &tlate, G4LogicalVolume *pMotherLogical, G4bool pMany, G4int pCopyNo, LXeDetectorConstruction *c)
 
- Public Member Functions inherited from G4PVPlacement
 G4PVPlacement (G4RotationMatrix *pRot, const G4ThreeVector &tlate, G4LogicalVolume *pCurrentLogical, const G4String &pName, G4LogicalVolume *pMotherLogical, G4bool pMany, G4int pCopyNo, G4bool pSurfChk=false)
 
 G4PVPlacement (const G4Transform3D &Transform3D, G4LogicalVolume *pCurrentLogical, const G4String &pName, G4LogicalVolume *pMotherLogical, G4bool pMany, G4int pCopyNo, G4bool pSurfChk=false)
 
 G4PVPlacement (G4RotationMatrix *pRot, const G4ThreeVector &tlate, const G4String &pName, G4LogicalVolume *pLogical, G4VPhysicalVolume *pMother, G4bool pMany, G4int pCopyNo, G4bool pSurfChk=false)
 
 G4PVPlacement (const G4Transform3D &Transform3D, const G4String &pName, G4LogicalVolume *pLogical, G4VPhysicalVolume *pMother, G4bool pMany, G4int pCopyNo, G4bool pSurfChk=false)
 
virtual ~G4PVPlacement ()
 
G4int GetCopyNo () const
 
void SetCopyNo (G4int CopyNo)
 
G4bool CheckOverlaps (G4int res=1000, G4double tol=0., G4bool verbose=true, G4int maxErr=1)
 
 G4PVPlacement (__void__ &)
 
G4bool IsMany () const
 
G4bool IsReplicated () const
 
G4bool IsParameterised () const
 
G4VPVParameterisation * GetParameterisation () const
 
void GetReplicationData (EAxis &axis, G4int &nReplicas, G4double &width, G4double &offset, G4bool &consuming) const
 
G4bool IsRegularStructure () const
 
G4int GetRegularStructureId () const
 
- Public Member Functions inherited from G4VPhysicalVolume
 G4VPhysicalVolume (G4RotationMatrix *pRot, const G4ThreeVector &tlate, const G4String &pName, G4LogicalVolume *pLogical, G4VPhysicalVolume *pMother)
 
virtual ~G4VPhysicalVolume ()
 
G4bool operator== (const G4VPhysicalVolume &p) const
 
G4RotationMatrix * GetObjectRotation () const
 
G4RotationMatrix GetObjectRotationValue () const
 
G4ThreeVector GetObjectTranslation () const
 
const G4RotationMatrix * GetFrameRotation () const
 
G4ThreeVector GetFrameTranslation () const
 
const G4ThreeVector & GetTranslation () const
 
const G4RotationMatrix * GetRotation () const
 
void SetTranslation (const G4ThreeVector &v)
 
G4RotationMatrix * GetRotation ()
 
void SetRotation (G4RotationMatrix *)
 
G4LogicalVolume * GetLogicalVolume () const
 
void SetLogicalVolume (G4LogicalVolume *pLogical)
 
G4LogicalVolume * GetMotherLogical () const
 
void SetMotherLogical (G4LogicalVolume *pMother)
 
const G4String & GetName () const
 
void SetName (const G4String &pName)
 
EVolume VolumeType () const
 
virtual G4int GetMultiplicity () const
 
 G4VPhysicalVolume (__void__ &)
 
G4int GetInstanceID () const
 

Additional Inherited Members

- Static Public Member Functions inherited from G4VPhysicalVolume
static const G4PVManager & GetSubInstanceManager ()
 
- Protected Member Functions inherited from G4VPhysicalVolume
void InitialiseWorker (G4VPhysicalVolume *pMasterObject, G4RotationMatrix *pRot, const G4ThreeVector &tlate)
 
void TerminateWorker (G4VPhysicalVolume *pMasterObject)
 
- Protected Attributes inherited from G4VPhysicalVolume
G4int instanceID
 
- Static Protected Attributes inherited from G4VPhysicalVolume
static G4GEOM_DLL G4PVManager subInstanceManager
 

Detailed Description

Definition at line 44 of file LXeWLSFiber.hh.

Constructor & Destructor Documentation

LXeWLSFiber::LXeWLSFiber ( G4RotationMatrix *  pRot,
const G4ThreeVector &  tlate,
G4LogicalVolume *  pMotherLogical,
G4bool  pMany,
G4int  pCopyNo,
LXeDetectorConstruction *  c 
)

Definition at line 42 of file LXeWLSFiber.cc.

References G4PVPlacement::G4PVPlacement(), G4Material::GetMaterial(), and G4VPhysicalVolume::SetLogicalVolume().

48  :G4PVPlacement(pRot,tlate,
49  new G4LogicalVolume(new G4Box("temp",1,1,1),
50  G4Material::GetMaterial("Vacuum"),
51  "temp",0,0,0),
52  "Cladding2",pMotherLogical,pMany,pCopyNo),fConstructor(c)
53 {
54  CopyValues();
55 
56  // The Fiber
57  //
58  G4Tubs* fiber_tube =
59  new G4Tubs("Fiber",fFiber_rmin,fFiber_rmax,fFiber_z,fFiber_sphi,fFiber_ephi);
60 
61  G4LogicalVolume* fiber_log =
62  new G4LogicalVolume(fiber_tube,G4Material::GetMaterial("PMMA"),
63  "Fiber",0,0,0);
64 
65  // Cladding (first layer)
66  //
67  G4Tubs* clad1_tube =
68  new G4Tubs("Cladding1",fClad1_rmin,fClad1_rmax,fClad1_z,fClad1_sphi,
69  fClad1_ephi);
70 
71  G4LogicalVolume* clad1_log =
72  new G4LogicalVolume(clad1_tube,G4Material::GetMaterial("Pethylene1"),
73  "Cladding1",0,0,0);
74 
75  // Cladding (second layer)
76  //
77  G4Tubs* clad2_tube =
78  new G4Tubs("Cladding2",fClad2_rmin,fClad2_rmax,fClad2_z,fClad2_sphi,
79  fClad2_ephi);
80 
81  fClad2_log =
82  new G4LogicalVolume(clad2_tube,G4Material::GetMaterial("Pethylene2"),
83  "Cladding2",0,0,0);
84 
85  new G4PVPlacement(0,G4ThreeVector(0.,0.,0.),fiber_log,
86  "Fiber", clad1_log,false,0);
87  new G4PVPlacement(0,G4ThreeVector(0.,0.,0.),clad1_log,
88  "Cladding1",fClad2_log,false,0);
89 
90  SetLogicalVolume(fClad2_log);
91 }
CLHEP::Hep3Vector G4ThreeVector
static G4Material * GetMaterial(const G4String &name, G4bool warning=true)
Definition: G4Material.cc:578
Definition: G4Box.hh:63
Definition: G4Tubs.hh:84
G4PVPlacement(G4RotationMatrix *pRot, const G4ThreeVector &tlate, G4LogicalVolume *pCurrentLogical, const G4String &pName, G4LogicalVolume *pMotherLogical, G4bool pMany, G4int pCopyNo, G4bool pSurfChk=false)
void SetLogicalVolume(G4LogicalVolume *pLogical)

The documentation for this class was generated from the following files: