StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes | List of all members
StiIstDetectorBuilder Class Reference

#include <StiIstDetectorBuilder.h>

Inheritance diagram for StiIstDetectorBuilder:
StiDetectorBuilder StiDetectorBuilder Named Named StiIstDetectorBuilder1

Public Member Functions

 StiIstDetectorBuilder (bool active, bool buildIdealGeom=true)
 
virtual void buildDetectors (StMaker &source)
 
virtual void useVMCGeometry ()
 
const StiDetectorgetActiveDetector (int ladder, int sensorHalf) const
 
 StiIstDetectorBuilder (bool active)
 
virtual void buildDetectors (StMaker &source)
 
virtual void AverageVolume (TGeoPhysicalNode *nodeP)
 
virtual void loadDS (TDataSet &)
 
virtual void useVMCGeometry ()
 
void setSiMat (StiMaterial *m)
 
void setHybridMat (StiMaterial *m)
 
StiMaterialgetSiMat ()
 
StiMaterialgetHybridMat ()
 
- Public Member Functions inherited from StiDetectorBuilder
 StiDetectorBuilder (const string &name, bool active)
 
detectorMap getDetectors ()
 
virtual StiMaterialadd (StiMaterial *material)
 
virtual StiShapeadd (StiShape *shape)
 
virtual StiDetectoradd (StiDetector *detector)
 
virtual StiDetectoradd (UInt_t row, UInt_t sector, StiDetector *detector)
 
virtual void del (UInt_t row, UInt_t sector)
 
virtual StiMaterialfindMaterial (const string &szName) const
 
virtual StiShapefindShape (const string &szName) const
 
virtual StiDetectorfindDetector (const string &szName) const
 
virtual StiDetectorgetDetector (UInt_t layer, UInt_t sector) const
 
virtual void setDetector (UInt_t layer, UInt_t sector, StiDetector *detector)
 
virtual void setNRows (UInt_t nRows)
 
virtual UInt_t getNRows () const
 
virtual UInt_t getNSectors (UInt_t row=0) const
 
virtual void setNSectors (UInt_t row, UInt_t nSectors)
 
virtual bool hasMore () const
 
virtual StiDetectornext ()
 
virtual void build (StMaker &source)
 
double nice (double angle) const
 
void setGroupId (int id)
 
int getGroupId () const
 
StiTrackingParametersgetTrackingParameters ()
 
Factory< StiDetector > * getDetectorFactory ()
 
void SetCurrentDetectorBuilder (StiDetectorBuilder *m)
 
void setGasMat (StiMaterial *m)
 
StiMaterialgetGasMat ()
 
void setSplit (double relThick=0.5, int maxSplit=20)
 
void Print () const
 
- Public Member Functions inherited from Named
void setName (const string &newName)
 Set the name of the object.
 
const string & getName () const
 Get the name of the object.
 
bool isName (const string &aName) const
 Determine whether name equals given name.
 

Protected Member Functions

virtual void buildInactiveVolumes ()
 
- Protected Member Functions inherited from Named
 Named (const string &aName=" ")
 Only derived class are Named.
 

Static Protected Member Functions

static std::string formTGeoPath (int ladder, int sensor)
 Returns a TGeo path to the sensor in the given ladder. More...
 

Protected Attributes

bool mBuildIdealGeom
 
StIstDbmIstDb
 
StiMaterial_siMat
 
StiMaterial_hybridMat
 
StiPlanarShape_waferShape [1]
 
StiPlanarShape_hybridShape [1]
 
- Protected Attributes inherited from StiDetectorBuilder
float mThkSplit
 
int mMaxSplit
 
int _groupId
 
bool _active
 
materialMap mMaterialMap
 
shapeMap mShapeMap
 
detectorMap mDetectorMap
 
detectorIterator mDetectorIterator
 
vector< vector< StiDetector * > > _detectors
 
Factory< StiDetector > * _detectorFactory
 
StiTrackingParameters_trackingParameters
 
StiMaterial_gasMat
 
- Protected Attributes inherited from Named
string _name
 

Additional Inherited Members

- Static Public Member Functions inherited from StiDetectorBuilder
static void setDebug (int m=0)
 
static int debug ()
 
static StiDetectorBuilderGetCurrentDetectorBuilder ()
 
static void MakeAverageVolume (TGeoPhysicalNode *nodeP)
 
- Static Protected Attributes inherited from StiDetectorBuilder
static StiDetectorBuilderfCurrentDetectorBuilder = 0
 
static int _debug = 0
 

Detailed Description

This detector builder is responsible for constructing sensitive and inactive Sti volumes describing the material of the IST detector. The corresponding IST detector geometry is described in AgML files in StarVMC/Geometry/

Author
Dmitri Smirnov, BNL
Christelle Roy
Date
02/27/04

This class is the description of the StiIstDetectorBuilder

Definition at line 24 of file StiIstDetectorBuilder.h.

Constructor & Destructor Documentation

StiIstDetectorBuilder::StiIstDetectorBuilder ( bool  active,
bool  buildIdealGeom = true 
)

Builds an object to direct the construction of Sti detectors/volumes.

Parameters
activeSet to true when accounting for hits in active volumes or false otherwise
buildIdealGeomSet to true (default) to ignore volume position transformation stored in the survey DB tables

Definition at line 45 of file StiIstDetectorBuilder.cxx.

Member Function Documentation

void StiIstDetectorBuilder::buildDetectors ( StMaker source)
virtual

Creates all Sti volumes of the IST detector.

Reimplemented from StiDetectorBuilder.

Definition at line 55 of file StiIstDetectorBuilder.cxx.

References buildInactiveVolumes(), TObjectSet::GetObject(), and useVMCGeometry().

void StiIstDetectorBuilder::buildInactiveVolumes ( )
protectedvirtual

Creates a crude approximation of the IST detector. The geometry is modeled with a single tube using the dimensions and other physical properties of the IST mother volume defined in the ROOT TGeo geometry.

Reimplemented in StiIstDetectorBuilder1.

Definition at line 197 of file StiIstDetectorBuilder.cxx.

References StIstDb::getHMatrixSensorOnGlobal(), Factory< Abstract >::getInstance(), StIstConsts::kIstNumLadders, StIstConsts::kIstNumSensorsPerLadder, and StiDetector::setProperties().

Referenced by buildDetectors().

std::string StiIstDetectorBuilder::formTGeoPath ( int  ladder,
int  sensor 
)
staticprotected

Returns a TGeo path to the sensor in the given ladder.

Returns a full path to the IST sensor placed in a predifined location in the detector's ROOT geometry. An empty string is returned if the sensor not found in the geometry hierarchy (via gGeoManager).

Definition at line 311 of file StiIstDetectorBuilder.cxx.

Referenced by useVMCGeometry().

const StiDetector * StiIstDetectorBuilder::getActiveDetector ( int  ladder,
int  sensorHalf 
) const

Returns the active StiDetector corresponding to a sensitive layer in IST. An active volume can have hits associated with it. The ladder id is expected to follow the human friendly numbering scheme, i.e.

1 <= ladder <= kIstNumLadders
1 <= sensorHalf <= 2

In this builder the active IST layers are added in stiRows 0 and 1 depending on the sensor half

Definition at line 183 of file StiIstDetectorBuilder.cxx.

References StIstConsts::kIstNumLadders.

void StiIstDetectorBuilder::useVMCGeometry ( )
virtual

Builds active Sti volumes by creating Sti shapes corresponding to the sensors of the IST detector. The created Sti detectors are positioned using either the ideal (ROOT's TGeo gGeoManager) or missaligned geometry from the STAR database via object of the StIstDb class.

Reimplemented from StiDetectorBuilder.

Definition at line 98 of file StiIstDetectorBuilder.cxx.

References formTGeoPath(), StIstDb::getHMatrixSensorOnGlobal(), Factory< Abstract >::getInstance(), StIstConsts::kIstNumLadders, StIstConsts::kIstNumSensorsPerLadder, and StiDetector::setProperties().

Referenced by buildDetectors().


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