8 #include "Sti/Base/Named.h"
9 #include "Sti/StiPlacement.h"
11 #include "StDetectorDbMaker/StiTrackingParameters.h"
21 typedef std::vector<StiDetector*> StiDetVect;
41 int splitIt(StiDetVect &vect,
double thick=0.2,
int nMax=20);
44 bool isOn()
const {
return true;}
45 inline bool isActive(
double dYlocal,
double dZlocal)
const {
return (*
isActiveFunctor)(dYlocal, dZlocal);}
47 bool isDiscreteScatterer()
const {
return 0; }
48 int insideL(
const double xl[3],
int mode=1,
double fakt=1)
const ;
49 int insideG(
const double xl[3],
int mode=1,
double fakt=1)
const ;
54 double getCos()
const {
return _cos; }
55 double getSin()
const {
return _sin; }
63 void setIsOn(
bool ) {;}
65 void setIsContinuousMedium(
bool ) {;}
66 void setIsDiscreteScatterer(
bool) {;}
77 virtual void build(){}
90 int getGroupId()
const {
return _groupId;}
97 void setKey(
int index,
int value);
98 int getKey(
int index)
const;
100 double getVolume()
const;
101 double getWeight()
const;
102 void getDetPlane(
double plane[4])
const;
105 static double mgValue[2];
144 inline void StiDetector::setPlacement(
StiPlacement *val)
147 _cos = cos(val->getNormalRefAngle());
148 _sin = sin(val->getNormalRefAngle());
152 inline void StiDetector::setKey(
int index,
int value)
156 case 1: _key1 = value;
break;
157 case 2: _key2 = value;
break;
162 inline int StiDetector::getKey(
int index)
const
166 case 1:
return _key1;
167 case 2:
return _key2;
void setProperties(std::string name, StiIsActiveFunctor *activeFunctor, StiShape *shape, StiPlacement *placement, StiMaterial *gas, StiMaterial *material)
friend ostream & operator<<(ostream &os, const StiHit &h)
double _cos
Convenience storage of cos(refAngle)
int _groupId
Detector group identifier.
StiIsActiveFunctor * isActiveFunctor
StiCompositeTreeNode< StiDetector > * mNode
Pointer to the parent detector node.
const StiDetector * detector() const
virtual Bool_t isActive() const
Returns whether the object is active.
StiMaterial * material
Discrete scatterer attributes.
StiPlacement * placement
Physical position and orientation of this detector or volume.
const StiHitErrorCalculator * _hitErrorCalculator
Hit Error Calculator for this detector.
StiMaterial * gas
Continuous scatter attributes.
function object for determine a detector's active regions
double _sin
Convenience storage of sin(refAngle)
StiShape * shape
Physical Shape attribute of this detector or voloume.