Geant4 Cross Reference |
>> 1 // This code implementation is the intellectual property of >> 2 // the GEANT4 collaboration. 1 // 3 // 2 // ******************************************* << 4 // By copying, distributing or modifying the Program (or any work 3 // * License and Disclaimer << 5 // based on the Program) you indicate your acceptance of this statement, 4 // * << 6 // and all its terms. 5 // * The Geant4 software is copyright of th << 6 // * the Geant4 Collaboration. It is provided << 7 // * conditions of the Geant4 Software License << 8 // * LICENSE and available at http://cern.ch/ << 9 // * include a list of copyright holders. << 10 // * << 11 // * Neither the authors of this software syst << 12 // * institutes,nor the agencies providing fin << 13 // * work make any representation or warran << 14 // * regarding this software system or assum << 15 // * use. Please see the license in the file << 16 // * for the full disclaimer and the limitatio << 17 // * << 18 // * This code implementation is the result << 19 // * technical work of the GEANT4 collaboratio << 20 // * By using, copying, modifying or distri << 21 // * any work based on the software) you ag << 22 // * use in resulting scientific publicati << 23 // * acceptance of all terms of the Geant4 Sof << 24 // ******************************************* << 25 // 7 // 26 // class G4VPhysicalVolume inline implementati << 8 // $Id: G4VPhysicalVolume.icc,v 1.4 2000/11/01 15:39:33 gcosmo Exp $ >> 9 // GEANT4 tag $Name: geant4-03-00 $ 27 // 10 // 28 // ------------------------------------------- << 11 // >> 12 // class G4VPhysicalVolume Inline Implementation >> 13 // >> 14 >> 15 inline >> 16 G4bool G4VPhysicalVolume::operator == (const G4VPhysicalVolume& p) const >> 17 { >> 18 return (this==&p) ? true : false; >> 19 } >> 20 >> 21 inline >> 22 const G4ThreeVector& G4VPhysicalVolume::GetTranslation() const >> 23 { >> 24 return ftrans; >> 25 } >> 26 >> 27 inline >> 28 void G4VPhysicalVolume::SetTranslation(const G4ThreeVector &v) >> 29 { >> 30 ftrans=v; >> 31 } 29 32 30 inline 33 inline 31 G4bool G4VPhysicalVolume::operator == (const G << 34 const G4RotationMatrix* G4VPhysicalVolume::GetRotation() const 32 { << 35 { 33 return this==&right; << 36 return frot; 34 } << 37 } 35 38 36 inline 39 inline 37 G4int G4VPhysicalVolume::GetInstanceID() const << 40 G4RotationMatrix* G4VPhysicalVolume::GetRotation() 38 { << 41 { 39 return instanceID; << 42 return frot; 40 } << 43 } >> 44 >> 45 inline >> 46 void G4VPhysicalVolume::SetRotation(G4RotationMatrix *pRot) >> 47 { >> 48 frot=pRot; >> 49 } 41 50 42 inline 51 inline 43 G4LogicalVolume* G4VPhysicalVolume::GetLogical 52 G4LogicalVolume* G4VPhysicalVolume::GetLogicalVolume() const 44 { << 53 { 45 return flogical; << 54 return flogical; 46 } << 55 } 47 << 56 48 inline << 57 inline 49 void G4VPhysicalVolume::SetLogicalVolume(G4Log << 58 void G4VPhysicalVolume::SetLogicalVolume(G4LogicalVolume *pLogical) 50 { << 59 { 51 flogical = pLogical; << 60 flogical=pLogical; 52 } << 61 } 53 << 62 54 inline << 63 inline 55 G4LogicalVolume* G4VPhysicalVolume::GetMotherL << 64 G4VPhysicalVolume* G4VPhysicalVolume::GetMother() const 56 { << 65 { 57 return flmother; << 66 return fmother; 58 } << 67 } 59 << 68 60 inline << 69 inline 61 void G4VPhysicalVolume::SetMotherLogical(G4Log << 70 void G4VPhysicalVolume::SetMother(G4VPhysicalVolume *pMother) 62 { << 71 { 63 flmother = pMother; << 72 fmother=pMother; 64 } << 73 } 65 << 74 66 inline << 75 inline 67 const G4String& G4VPhysicalVolume::GetName() c << 76 G4String G4VPhysicalVolume::GetName() const 68 { << 77 { 69 return fname; << 78 return fname; 70 } << 79 } 71 << 80 72 inline << 81 inline 73 EVolume G4VPhysicalVolume::DeduceVolumeType() << 82 void G4VPhysicalVolume::SetName(const G4String& pName) 74 { << 83 { 75 EVolume type; << 84 fname=pName; 76 EAxis axis; << 85 } 77 G4int nReplicas; << 86 78 G4double width,offset; << 87 inline 79 G4bool consuming; << 88 G4RotationMatrix G4VPhysicalVolume::GetObjectRotationValue() const 80 if ( IsReplicated() ) << 89 { 81 { << 90 G4RotationMatrix aRotM; // Initialised to identity 82 GetReplicationData(axis,nReplicas,width,of << 91 83 type = (consuming) ? kReplica : kParameter << 92 // Insure against frot being a null pointer 84 } << 93 if(frot) 85 else << 94 { 86 { << 95 aRotM= frot->inverse(); 87 type = kNormal; << 96 } 88 } << 97 return aRotM; 89 return type; << 98 } 90 } << 99 >> 100 inline >> 101 G4ThreeVector G4VPhysicalVolume::GetObjectTranslation() const >> 102 { >> 103 return ftrans; >> 104 } >> 105 >> 106 inline >> 107 const G4RotationMatrix* G4VPhysicalVolume::GetFrameRotation() const >> 108 { >> 109 return frot; >> 110 } >> 111 >> 112 inline >> 113 G4ThreeVector G4VPhysicalVolume::GetFrameTranslation() const >> 114 { >> 115 return -ftrans; >> 116 } 91 117