Class BSTFactory
- All Implemented Interfaces:
Factory<BSTDetector, BSTSector, BSTSuperlayer, BSTLayer>, Showable
Factory.
Factory: BSTFactory
Hierarchy:
BSTDetector →
BSTSector →
BSTSuperlayer →
BSTLayer →
SiStrip
Due to the way the BST is organized, it would be most convenient to organize
the BST hierarchy such that superlayers contain layers which contain sectors.
However, this is not directly possible within the clasrec-geometry API. To
approximate the desired hierarchy within the framework of the API,
BSTSector contains one ring of sensor modules at a constant radius
from the beam. Each BSTSector contains two BSTSuperlayers,
one representing the u-layer and the other the v-layer. Each
BSTSuperlayer has a number of BSTLayers equal to the number
of sectors in the superlayer. Then, each BSTLayer contains a 256
SiStrips.
Note: "/geometry/bst/region/radius" is assumed to measure the distance from the beam to the beam-side surtriangle of the u-sensor not the distance from the beam to the beam-side surtriangle of the backing structure.
- Author:
- jnhankins
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionConstructs a newDetectorin CLAS coordinates using the given constants.Constructs a newDetectorin Local coordinates using the given constants.Constructs a newDetectorin Sector coordinates using the given constants.Constructs a newDetectorin Tilted coordinates using the given constants.createLayer(ConstantProvider cp, int sectorId, int superlayerId, int layerId) Constructs the specifiedLayerin Local coordinates using the given constants.createRing(ConstantProvider cp, int ring) createRingLayer(ConstantProvider cp, int ringId, int superlayerId, int layerIdtrue) createSector(ConstantProvider cp, int sectorId) Constructs the specifiedSectorin Local coordinates using the given constants.createSuperlayer(ConstantProvider cp, int sectorId, int superlayerId) Constructs the specifiedSuperlayerin Local coordinates using the given constants.getTransformation(ConstantProvider cp, int sectorId, int superlayerId, int layerId) Returns a transformation object for given sector, superlayer and layergetType()Returns "BST Factory".voidshow()InvokesSystem.out.println(this).toString()
-
Constructor Details
-
BSTFactory
public BSTFactory()
-
-
Method Details
-
createDetectorCLAS
Description copied from interface:FactoryConstructs a newDetectorin CLAS coordinates using the given constants.- Specified by:
createDetectorCLASin interfaceFactory<BSTDetector, BSTSector, BSTSuperlayer, BSTLayer>- Parameters:
cp- the constant provider- Returns:
- a detector in CLAS coordinates
-
createDetectorSector
Description copied from interface:FactoryConstructs a newDetectorin Sector coordinates using the given constants.- Specified by:
createDetectorSectorin interfaceFactory<BSTDetector, BSTSector, BSTSuperlayer, BSTLayer>- Parameters:
cp- the constant provider- Returns:
- a detector in Sector coordinates
-
createDetectorTilted
Description copied from interface:FactoryConstructs a newDetectorin Tilted coordinates using the given constants.- Specified by:
createDetectorTiltedin interfaceFactory<BSTDetector, BSTSector, BSTSuperlayer, BSTLayer>- Parameters:
cp- the constant provider- Returns:
- a detector in Tilted coordinates
-
createDetectorLocal
Description copied from interface:FactoryConstructs a newDetectorin Local coordinates using the given constants.- Specified by:
createDetectorLocalin interfaceFactory<BSTDetector, BSTSector, BSTSuperlayer, BSTLayer>- Parameters:
cp- the constant provider- Returns:
- a detector in Local coordinates
-
createRing
-
createSector
Description copied from interface:FactoryConstructs the specifiedSectorin Local coordinates using the given constants.- Specified by:
createSectorin interfaceFactory<BSTDetector, BSTSector, BSTSuperlayer, BSTLayer>- Parameters:
cp- the constant providersectorId- the sector id of the desired sector- Returns:
- a sector in Local coordinates
-
createSuperlayer
Description copied from interface:FactoryConstructs the specifiedSuperlayerin Local coordinates using the given constants.- Specified by:
createSuperlayerin interfaceFactory<BSTDetector, BSTSector, BSTSuperlayer, BSTLayer>- Parameters:
cp- the constant providersectorId- the sector id of the desired superlayersuperlayerId- the superlayer id of the desired superlayer- Returns:
- a superlayer in Local coordinates
-
createRingLayer
-
createLayer
Description copied from interface:FactoryConstructs the specifiedLayerin Local coordinates using the given constants.- Specified by:
createLayerin interfaceFactory<BSTDetector, BSTSector, BSTSuperlayer, BSTLayer>- Parameters:
cp- the constant providersectorId- the sector id of the desired layersuperlayerId- the superlayer id of the desired layerlayerId- the layer id of the desired layer- Returns:
- a layer in Local coordinates
-
getType
Returns "BST Factory".- Specified by:
getTypein interfaceFactory<BSTDetector, BSTSector, BSTSuperlayer, BSTLayer>- Returns:
- "BST Factory"
-
show
public void show()Description copied from interface:FactoryInvokesSystem.out.println(this).- Specified by:
showin interfaceFactory<BSTDetector, BSTSector, BSTSuperlayer, BSTLayer>- Specified by:
showin interfaceShowable
-
toString
-
getTransformation
public Transformation3D getTransformation(ConstantProvider cp, int sectorId, int superlayerId, int layerId) Description copied from interface:FactoryReturns a transformation object for given sector, superlayer and layer- Specified by:
getTransformationin interfaceFactory<BSTDetector, BSTSector, BSTSuperlayer, BSTLayer>- Parameters:
cp-sectorId-superlayerId-layerId-- Returns:
-
getDetectorTransform
- Specified by:
getDetectorTransformin interfaceFactory<BSTDetector, BSTSector, BSTSuperlayer, BSTLayer>
-