GEMC  2.2
Geant4 Monte-Carlo Framework
Public Member Functions | Data Fields | Friends
detector Class Reference

#include <detector.h>

+ Collaboration diagram for detector:

Public Member Functions

 detector ()
 
 ~detector ()
 
int create_solid (goptions, map< string, detector > *)
 Creates the Solid. If it's a Copy Placement, retrieve and assigns LogicV. More...
 
int create_logical_volume (map< string, G4Material * > *, goptions)
 Creates the Logical Volume. More...
 
int create_physical_volumes (goptions, G4LogicalVolume *)
 Creates the Physical Volume. More...
 
void setSensitivity (G4VSensitiveDetector *SD)
 Assign the sensitive detector to the Logical Volume. More...
 
G4VSolid * GetSolid ()
 Returns G4 Solid pointer. More...
 
G4LogicalVolume * GetLogical ()
 Returns Logical Volume pointer. More...
 
G4VPhysicalVolume * GetPhysical ()
 Returns Physical Volume pointer. More...
 
void SetLogical (G4LogicalVolume *LV)
 Sets Logical Volume pointer. More...
 
void SetTranslation (G4ThreeVector TR)
 Sets Physical Volume Position. More...
 
void RemoveDaughter (G4VPhysicalVolume *PV)
 Remove Physical Volumes from LogicV. More...
 
void AssignMFM (G4FieldManager *MFM)
 Assigns Magnetic Field Manager to LogicV. More...
 
void SetUserLimits (G4UserLimits *L)
 
bool operator== (const detector &D) const
 Overloaded "==" operator for detector class. More...
 

Data Fields

string name
 Name of the volume. Since this is the key of the STL map, it has to be unique. More...
 
string mother
 Mother Volume name. More...
 
string description
 Volume Description for documentation. More...
 
G4ThreeVector pos
 Position relative to the mother volume, as G4ThreeVector. More...
 
G4RotationMatrix rot
 Rotation Matrix, defined by rotations along x,y,z axis relative to the mother volume. More...
 
G4VisAttributes VAtts
 Visual Attributes: color, transparency, style (wireframe, solid), visibility. More...
 
string type
 solid type. This follows the GEANT4 definitions More...
 
vector< double > dimensions
 vector of dimensions. Size, units depends on solid type More...
 
string material
 Volume Material name. More...
 
string magfield
 Magnetic Field. The string "no" means that the field is inherited from the mother volume. More...
 
int ncopy
 copy number More...
 
bool pMany
 Needed by geant4 at G4PVPlacement time. More...
 
int exist
 detector ON/OFF switch More...
 
int visible
 visibility of the detector: 0=invisible 1=visible More...
 
int style
 Visual style: 0=wireframe 1=solid. More...
 
string sensitivity
 Defines the Sensitive Detector. possible choices: "no" "hits collection name". More...
 
string hitType
 Hit Process routine name. A Hit Process HitProcess derived class must exists with this name. More...
 
vector< identifieridentity
 Vector of identifiers. Example: superlayer manual 1 type manual 2 segment manual 3 strip manual 4. More...
 
int scanned
 for use during construction More...
 
string system
 detector system More...
 
string factory
 factory that generated the detector More...
 
string variation
 variation that generated the detector More...
 
int run
 run number that generated the detector More...
 

Friends

ostream & operator<< (ostream &stream, detector)
 Overloaded "<<" for detector class. Dumps infos on screen. More...
 

Detailed Description

detector

This is the gemc volume class. It contains:

Definition at line 60 of file detector.h.

Constructor & Destructor Documentation

detector::detector ( )

Definition at line 39 of file detector.cc.

detector::~detector ( )
inline

Definition at line 65 of file detector.h.

Member Function Documentation

void detector::AssignMFM ( G4FieldManager *  MFM)
inline

Definition at line 117 of file detector.h.

int detector::create_logical_volume ( map< string, G4Material * > *  MMats,
goptions  gemcOpt 
)

Definition at line 725 of file detector.cc.

int detector::create_physical_volumes ( goptions  gemcOpt,
G4LogicalVolume *  mamma 
)

< name

< Logical Volume Copy

< Mother Logical Volume

< EAxis of copy - can be kXAxis,kYAxis,kZAxis,kRho,kRadial3D,kPhi

< Number of repetitions

< Width of repetitions

< Offset of repetitions

< rotation

< translation

< logical volume

< name

< Mother Logical Volume

< no boolean operation

< copy number

< rotation

< translation

< logical volume

< name

< Mother Logical Volume

< pMany (for future use)

< ncopy

< Checks Volume Overlapping at Placement time

Definition at line 787 of file detector.cc.

int detector::create_solid ( goptions  gemcOpt,
map< string, detector > *  Map 
)

< name

< half length in X

< half length in Y

< half length in Z

< name

< half length in X

< half length in Y

< half length in Z

< Angle with y axis

< Polar angle of the line joining the centres of the faces at -dz and +dz in z

< Azimuthal angle of the line joining the centres of the faces at -dz and +dz in z

< name

< Inner radius

< Outer radius

< Starting Phi angle of the segment

< Delta Phi angle of the segment

< Starting Theta angle of the segment

< Delta Theta angle of the segment

< name

< Semiaxis in X

< Semiaxis in Y

< Semiaxis in Z

< lower cut plane level, z

< upper cut plane level, z

< name

< Half length Z

< Radius at -Dz

< Radius at +Dz greater than R1

< name

< Inner radius

< Outer radius

< Inner stereo angle in radians

< Outer stereo angle in radians

< Half length in Z

< name

< Inner radius

< Outer radius

< Half length in z

< The starting phi angle

< Delta Phi angle of the segment

< name

< Inner radius 1

< Outer radius 1

< Inner radius 2

< Outer radius 2

< Half length in z

< The starting phi angle

< Delta Phi angle of the segment

< name

< Inner radius

< Outer radius

< Swept radius of torus

< pSPhi: Starting Phi angle in radians (fSPhi+fDPhi<=2PI, fSPhi>-2PI)

< pDPhi: Delta angle of the segment in radians

< name

< Half-length along x at the surface positioned at -dz

< Half-length along x at the surface positioned at +dz

< Half-length along y at the surface positioned at -dz

< Half-length along y at the surface positioned at +dz

< Half-length along z axis

< name

< Half z length

< Polar angle of the line joining the centres of the faces at -/+pDz

< pPhi

< Half y length at -pDz

< Half x length at -pDz, y=-pDy1

< Half x length at -pDz, y=+pDy

< Angle with respect to the y axis from the centre of the side (lower endcap)

< Half y length at +pDz

< Half x length at +pDz, y=-pDy2

< Half x length at +pDz, y=+pDy2

< Angle with respect to the y axis from the centre of the side (upper endcap)

< name

< Half z length

< Polar angle of the line joining the centres of the faces at -/+pDz

< pPhi

< Half y length at -pDz

< Half x length at -pDz, y=-pDy1

< Half x length at -pDz, y=+pDy

< Angle with respect to the y axis from the centre of the side (lower endcap)

< Half y length at +pDz

< Half x length at +pDz, y=-pDy2

< Half x length at +pDz, y=+pDy2

< Angle with respect to the y axis from the centre of the side (upper endcap)

< name

< Half z length

< The (x,y) coordinates of vertices

< number of sides

< number of planes in z directions

< name

< Initial Phi starting angle

< Total Phi angle

< Number of sides

< Number of z planes

< z coordinate of corners

< Tangent distance to inner surface

< Tangent distance to outer surface

< number of planes in z directions

< name

< Initial Phi starting angle

< Total Phi angle

< Number of z planes

< z coordinate of corners

< Tangent distance to inner surface

< Tangent distance to outer surface

Definition at line 46 of file detector.cc.

G4LogicalVolume* detector::GetLogical ( )
inline

Definition at line 112 of file detector.h.

G4VPhysicalVolume* detector::GetPhysical ( )
inline

Definition at line 113 of file detector.h.

G4VSolid* detector::GetSolid ( )
inline

Definition at line 111 of file detector.h.

bool detector::operator== ( const detector D) const

Definition at line 1109 of file detector.cc.

void detector::RemoveDaughter ( G4VPhysicalVolume *  PV)
inline

Definition at line 116 of file detector.h.

void detector::SetLogical ( G4LogicalVolume *  LV)
inline

Definition at line 114 of file detector.h.

void detector::setSensitivity ( G4VSensitiveDetector SD)
inline

Definition at line 109 of file detector.h.

void detector::SetTranslation ( G4ThreeVector  TR)
inline

Definition at line 115 of file detector.h.

void detector::SetUserLimits ( G4UserLimits *  L)
inline

Definition at line 119 of file detector.h.

Friends And Related Function Documentation

ostream& operator<< ( ostream &  stream,
detector  Detector 
)
friend

Definition at line 1071 of file detector.cc.

Field Documentation

string detector::description

Definition at line 69 of file detector.h.

vector<double> detector::dimensions

Definition at line 77 of file detector.h.

int detector::exist

Definition at line 85 of file detector.h.

string detector::factory

Definition at line 96 of file detector.h.

string detector::hitType

Definition at line 90 of file detector.h.

vector<identifier> detector::identity

Definition at line 91 of file detector.h.

string detector::magfield

Definition at line 80 of file detector.h.

string detector::material

Definition at line 79 of file detector.h.

string detector::mother

Definition at line 68 of file detector.h.

string detector::name

Definition at line 67 of file detector.h.

int detector::ncopy

Definition at line 82 of file detector.h.

bool detector::pMany

Definition at line 83 of file detector.h.

G4ThreeVector detector::pos

Definition at line 71 of file detector.h.

G4RotationMatrix detector::rot

Definition at line 72 of file detector.h.

int detector::run

Definition at line 98 of file detector.h.

int detector::scanned

Definition at line 93 of file detector.h.

string detector::sensitivity

Definition at line 89 of file detector.h.

int detector::style

Definition at line 87 of file detector.h.

string detector::system

Definition at line 95 of file detector.h.

string detector::type

Definition at line 76 of file detector.h.

string detector::variation

Definition at line 97 of file detector.h.

G4VisAttributes detector::VAtts

Definition at line 74 of file detector.h.

int detector::visible

Definition at line 86 of file detector.h.