119 for(
int i=0;
i<3;
i++){
127 std::vector<DTDigi*>::const_iterator
p;
269 for (detUnitIt=dtDigis.begin();
270 detUnitIt!=dtDigis.end();
273 const DTLayerId&
id = (*detUnitIt).first;
284 digiIt!=range.second;
287 int tube = (*digiIt).wire();
292 std::cout <<
" digi time : " << (*digiIt).time();
294 std::cout <<
" drift time after subtraction : " << tdrift << std::endl;
298 if(tdrift<500 && tdrift>-500){
307 int layn =
id.layer();
322 std::cout <<
" now nbti is " << nch << std::endl;
370 <<
" BTIs with signal" << std::endl;
376 std::cout <<
"====================================================" << std::endl;
377 std::cout <<
" BTI triggers " << std::endl;
382 for(
int sl=1;sl<=3;sl++){
401 std::cout <<
"====================================================" << std::endl;
410 if( n<1 || n>
geom()->nCell(sl) ){
412 std::cout <<
"DTBtiCard::activeGetBTI :";
415 std::cout <<
" dummy BTI returned!" << std::endl;
430 std::cout <<
"DTBtiCard::activeGetBTI :";
431 std::cout <<
" bti number: " << n << std::endl;
436 std::cout <<
"DTBtiCard::activeGetBTI :";
437 std::cout <<
" invalid superlayer number: " << sl;
438 std::cout <<
" dummy BTI returned!" << std::endl;
447 bti = (*pbti).second;
457 if(sl<1||sl>3||n==999){
459 std::cout <<
" invalid superlayer number: " << sl;
460 std::cout <<
" 0 returned!" << std::endl;
467 return (*pbti).second;
470 std::vector<DTBtiChip*>
473 std::vector<DTBtiChip*> blist;
475 if(
size()<1)
return blist;
479 std::cout <<
" invalid superlayer number: " << sl;
480 std::cout <<
" empty list returned" << std::endl;
485 blist.push_back((*p).second);
497 std::cout <<
"DTBtiCard::trigger: trigger not belonging to this card! ";
504 auto trig = std::make_unique<DTBtiTrig>(bti,td);
505 auto pTrig = trig.get();
558 std::cout <<
"DTBtiCard::localPosition called with wrong argument!" << std::endl;
590 std::cout <<
"DTBtiCard::localPosition of BTI in ("<<x<<
","<<y<<
","<<z<<
")"<<std::endl;
593 std::cout <<
"in Local Point ("<<x+xt<<
","<<y+yt<<
","<<z<<
")"<<std::endl;
606 std::cout <<
"DTBtiCard::localDirection called with wrong argument!" << std::endl;
638 std::cout <<
"DTBtiCard::localDirection of BTI in ("<<xb<<
","<<yb<<
","<<zb<<
")"<<std::endl;
641 std::cout <<
"in Local Direction ("<<xd<<
","<<yd<<
","<<zd<<
")"<<std::endl;
680 ConfBtiMap::const_iterator biter =
_conf_bti_map.find(btiid);
686 <<
"," << btiid.
bti()
687 <<
") not found, return 0" << std::endl;
DTConfigBti * config_bti(DTBtiId &btiid) const
Return bti chip configuration.
std::vector< DTDigi * > _digis
int debug() const
Debug flag.
DTTrigGeom * geom() const
Associated geometry.
Local3DVector LocalVector
int mapTubeInFEch(int nsl, int nlay, int ntube) const
Staggering of first wire of layer respect to default: obsolete 19/6/06.
Point3DBase< Scalar, LocalTag > LocalPoint
int sector() const
Return sector number.
float cellPitch() const
Width of a cell (cm) i.e. distance between ywo wires.
std::vector< DTBtiChip * > btiList(int)
Returns the active BTI list in a given superlayer.
DTBtiTrig * storeTrigger(DTBtiTrigData)
Sin< T >::type sin(const T &t)
DTBtiCard(DTTrigGeom *)
Constructor.
DTBtiId parentId() const
Return parent BTI identifier.
void clearCache()
Clear all BTI stuff (map & cache)
float ST() const
Max drift time in 12.5 ns steps.
DTBtiChip * activeGetBTI(int sl, int n)
Returns the required DTBtiChip. Create it if it doesn't exist.
LocalVector localDirection(const DTTrigData *) const override
NEWGEO Local direction in chamber of a trigger-data object.
std::map< std::string, int, std::less< std::string > > psi
int station() const
Return station number.
const DTConfigPedestals * _pedestals
~DTBtiCard() override
Destructor.
void setConfig(const DTConfigManager *conf)
Set configuration.
bool debug() const
Return TU debug flag.
int X() const
Return trigger X parameter.
void run()
Run DTBtiChip algorithm.
int wheel() const
Returns wheel number.
int superlayer() const
Returns the superlayer.
DTBtiTrigData triggerData(int step, unsigned n) const
Return the data part of the requested trigger.
int sector() const
Returns sector number.
int wheel() const
Return wheel number.
float cellH() const
Height of a cell (cm)
DTBtiChip * getBTI(int sl, int n) const
Returns the required BTI. Return 0 if it doesn't exist.
int station() const
Returns station number.
Cos< T >::type cos(const T &t)
float getOffset(const DTWireId &wire) const
Get wire by wire delay.
const std::map< DTBtiId, DTConfigBti > & getDTConfigBtiMap(DTChamberId) const
Get desired BTI configuration map for a given DTChamber.
BTIContainer::const_iterator BTI_const_iter
void print() const override
Print.
int nTrig(int step) const
Number of triggers found.
DTChamberId ChamberId() const
Identifier of the associated chamber.
static const int NSTEPL
Constants: first and last step to start trigger finding.
bool getDTTPGDebug() const
Get global debug flag.
int superlayer() const
Return the superlayer number (deprecated method name)
int number() const
Return DTBtiChip number.
int bti() const
Returns the bti.
BTIContainer::iterator BTI_iter
DTChamberId statId() const
Identifier of the associated chamber.
int btiSL() const
Return parent BTI superlayer.
std::vector< DigiType >::const_iterator const_iterator
const_iterator begin() const
Get first cache element.
int K() const
Return trigger K parameter.
LocalPoint localPosition(const DTBtiId) const
Local position in chamber of a BTI.
LocalPoint localPosition(const DTTrigData *) const override
NEWGEO Local position in chamber of a trigger-data object.
void loadBTI(const DTDigiCollection dtDigis)
store digi's in DTBtiChip's
std::pair< const_iterator, const_iterator > Range
void add_digi(int cell, const DTDigi *digi)
Add a digi to the DTBtiChip.
void addTrig(int step, std::unique_ptr< DTBtiTrig > btitrig)
bool useAcceptParam() const
Use Bti acceptance parameters (LL,LH,CL,CH,RL,RH)
void runBTI()
run DTBtiChip algorithm
const_iterator end() const
Get last cache element.
void clearCache()
Clear cache vector.
const DTConfigPedestals * getDTConfigPedestals() const
Get desired Pedestals configuration.
void localClear()
clear the BTI maps
int nCell(int sl) const
Number of BTIs in a required superlayer (i.e. nCells in lay 1)
int size() const
Get cache vector's size.
int step() const
Return trigger step.