 |
ATLAS Offline Software
|
#include <CMApatterns.h>
|
| | CMApatterns (int, const CMAparameters *, unsigned long int) |
| |
| | CMApatterns (const CMApatterns &) |
| |
| CMApatterns | operator= (const CMApatterns &) |
| |
| bool | operator== (const CMApatterns &) const |
| |
| bool | operator!= (const CMApatterns &) const |
| |
| bool | operator< (const CMApatterns &) const |
| |
| void | load_digit (const RPCdigit *) |
| |
| CMApatterns & | operator<< (const RPCdigit *) |
| |
| unsigned long int | debug (void) const |
| |
| int | sector (void) const |
| |
| const CMAparameters & | cma_parameters (void) const |
| |
| const bitPATTERN & | pivot0 (void) const |
| |
| const bitPATTERN & | pivot1 (void) const |
| |
| const bitPATTERN & | lowPt0 (void) const |
| |
| const bitPATTERN & | lowPt1 (void) const |
| |
| const bitPATTERN & | highPt0 (void) const |
| |
| const bitPATTERN & | highPt1 (void) const |
| |
| void | coincidence_distance (TRIGdistance &, TRIGdistance &) const |
| |
| const TRIGdistance | lowest_distance (const bitPATTERN &, const bitPATTERN &) const |
| |
| const TRIGdistance | distance (const RPCdigit *, const RPCdigit *) const |
| |
| const CMAtrigger | give_trigger (Lvl1RPCalgo) const |
| |
| Matrix * | give_low_pt_matrix (uint NOBXS, uint BCZERO) |
| |
| Matrix * | give_high_pt_matrix (uint NOBXS, uint BCZERO) |
| |
| void | Print (std::ostream &, bool) const |
| |
| void | set_number (int) |
| |
| int | number (void) const |
| |
| void | PrintElement (std::ostream &, std::string, bool) const |
| |
| ObjectType | tag () const |
| |
| const std::string & | name () const |
| |
|
| bitPATTERN | decluster (const bitPATTERN &) const |
| |
| bitPATTERN | majority (bitPATTERN &, bitPATTERN &) const |
| |
| void | update_distance (const TRIGdistance &, TRIGdistance &) const |
| |
| CMAtrigger | find_trigger (const bitPATTERN &, const bitPATTERN &, const bitPATTERN &) const |
| |
| CMAtrigger | find_trigger (const bitPATTERN &, const bitPATTERN &, const bitPATTERN &, const bitPATTERN &) const |
| |
| CMAtrigger | trigger_window (TRIGdistance, TrigType) const |
| |
| CMAtrigger | trigger_threshold (int, int, TrigType) const |
| |
| void | search_for_lowPt (Lvl1RPCalgo, TrigSigns &) const |
| |
| void | search_for_highPt (Lvl1RPCalgo, TrigSigns &) const |
| |
| void | search_signatures (Lvl1RPCalgo, TrigType, TrigSigns &, const bitPATTERN &, const bitPATTERN &) const |
| |
| void | search_signatures (Lvl1RPCalgo, TrigType, CMAtrigger &, const bitPATTERN &) const |
| |
| void | create_hardware (TrigType, uint NOBXS, uint BCZERO) |
| |
| void | load_data (int, int, const bitPATTERN &, Matrix *) |
| |
Definition at line 20 of file CMApatterns.h.
◆ TRIGdistance
◆ TRIGlist
◆ TrigSigns
◆ CMApatterns() [1/2]
| CMApatterns::CMApatterns |
( |
int |
sector, |
|
|
const CMAparameters * |
cma, |
|
|
unsigned long int |
debug |
|
) |
| |
◆ CMApatterns() [2/2]
◆ cma_parameters()
◆ coincidence_distance()
◆ create_hardware()
Definition at line 722 of file CMApatterns.cxx.
734 int lohi = (
type ==
Low) ? 0 : 1;
743 address,localAdd, NOBXS, BCZERO);
759 matrix->setLocalDirection(0,7);
760 matrix->setLocalDirection(1,7);
789 for (
int ch=0;
ch<pivot_ch; ++
ch)
807 for (
int ch=0;
ch<pivot_ch; ++
ch)
828 for (
int ch=0;
ch<pivot_ch; ++
ch)
836 matrix->setMajority(0,maj_th0);
837 matrix->setMajority(1,maj_th1);
838 matrix->setMajority(2,maj_th2);
843 matrix->setMatOverlap(0, ovl1);
844 matrix->setMatOverlap(1, ovl2);
874 for (
int ch=0;
ch<pivot_ch; ++
ch)
890 for (
int ch=0;
ch<pivot_ch; ++
ch)
911 for (
int ch=0;
ch<pivot_ch; ++
ch)
918 matrix->setMajority(0,maj_th0);
919 matrix->setMajority(1,maj_th1);
920 matrix->setMajority(2,maj_th2);
923 matrix->setMatOverlap(0, ovl1);
924 matrix->setMatOverlap(1, ovl2);
◆ debug()
| unsigned long int CMApatterns::debug |
( |
void |
| ) |
const |
|
inline |
◆ decluster()
Definition at line 120 of file CMApatterns.cxx.
129 int cluster_size = 0;
130 do { ++cluster_size; }
while(
pattern.test(
i+cluster_size) );
133 int decl_upper = cluster_size;
135 switch (cluster_size%2)
138 for( ;decl_lower+1 < decl_upper && decl_lower<=3; ++decl_lower)
146 for( ;decl_lower+1 < decl_upper && decl_lower<=3; ++decl_lower)
153 i += (cluster_size - 1);
◆ distance()
Definition at line 255 of file CMApatterns.cxx.
268 float Zprime = pivot->
z()*(conrad/pivrad);
277 if( pivot->
phi(pivphi) &&
282 float Sprime =
std::tan(pivphi-staphi)*conrad;
◆ find_trigger() [1/2]
Definition at line 468 of file CMApatterns.cxx.
475 if ( !pivot.
any() || !
lowPt.any() )
return trigger_result;
477 for(
int i=0;
i<pivot.
size();++
i)
479 if(
const RPCdigit* pivot_digit = pivot[
i])
482 for(
int j=0;j<
lowPt.size();++j)
490 trigger_result += signature;
494 if ( trigger_result.trigger().searchForHigh() )
504 trigger_result += signature;
506 if( trigger_result.trigger().highest(
High) )
break;
509 if ( trigger_result.trigger().highest(
High) )
break;
512 if ( trigger_result.trigger().highest(
High) )
break;
515 return trigger_result;
◆ find_trigger() [2/2]
Definition at line 520 of file CMApatterns.cxx.
526 if ( !pivot.
any() || !
lowPt.any() )
return trigger_result;
528 for(
int i=0;
i<pivot.
size();++
i)
530 if(
const RPCdigit* pivot_digit = pivot[
i])
533 for(
int j=0;j<
lowPt.size();++j)
541 trigger_result += signature;
545 if ( trigger_result.trigger().searchForHigh() )
555 trigger_result += signature;
557 if( trigger_result.trigger().highest(
High) )
break;
562 if ( trigger_result.trigger().searchForHigh() )
572 trigger_result += signature;
574 if( trigger_result.trigger().highest(
High) )
break;
577 if ( trigger_result.trigger().highest(
High) )
break;
580 if ( trigger_result.trigger().highest(
High) )
break;
583 return trigger_result;
◆ give_high_pt_matrix()
◆ give_low_pt_matrix()
◆ give_trigger()
◆ highPt0()
◆ highPt1()
◆ load_data()
◆ load_digit()
◆ lowest_distance()
◆ lowPt0()
◆ lowPt1()
◆ majority()
◆ name()
| const std::string& BaseObject::name |
( |
| ) |
const |
|
inlineinherited |
◆ number()
| int RPCtrigDataObject::number |
( |
void |
| ) |
const |
|
inlineinherited |
◆ operator!=()
◆ operator<()
◆ operator<<()
◆ operator=()
◆ operator==()
◆ pivot0()
◆ pivot1()
◆ Print()
| void CMApatterns::Print |
( |
std::ostream & |
stream, |
|
|
bool |
detail |
|
) |
| const |
|
virtual |
◆ PrintElement()
| void RPCtrigDataObject::PrintElement |
( |
std::ostream & |
, |
|
|
std::string |
, |
|
|
bool |
|
|
) |
| const |
|
inlineinherited |
◆ search_for_highPt()
◆ search_for_lowPt()
◆ search_signatures() [1/2]
Definition at line 419 of file CMApatterns.cxx.
428 const int Kpatt = trigger_result.
Kpatt();
433 for(
int j=0;j<
confirm.size();++j)
450 signature.set_pivot(pivot_digit);
451 signature.set_lowPt(confirm_digit);
453 else if(trigType ==
High)
455 signature.set_highPt(confirm_digit);
457 signature.set_width(
d.first);
458 signature.set_Kpatt(Kpatt);
459 trigger_result += signature;
◆ search_signatures() [2/2]
Definition at line 364 of file CMApatterns.cxx.
372 for(
int i=0;
i<pivot.
size();++
i)
374 if(
const RPCdigit* pivot_digit = pivot[
i])
379 for(
int j=0;j<
confirm.size();++j)
397 signature.set_pivot(pivot_digit);
398 signature.set_lowPt(confirm_digit);
400 else if(trigType ==
High)
402 signature.set_highPt(confirm_digit);
404 signature.set_width(
d.first);
405 signature.set_Kpatt(
i);
406 trigger_result += signature;
411 if(trigger_result.trigger().type()!=
None)
◆ sector()
| int CMApatterns::sector |
( |
void |
| ) |
const |
|
inline |
◆ set_number()
| void RPCtrigDataObject::set_number |
( |
int |
number | ) |
|
|
inherited |
◆ tag()
◆ trigger_threshold()
Definition at line 631 of file CMApatterns.cxx.
639 const bool* program = 0;
649 program =
prog->registers();
661 program =
prog->registers();
◆ trigger_window()
Definition at line 587 of file CMApatterns.cxx.
595 int upper_threshold = (
type ==
Low)? 2 : 4;
596 int lower_threshold = (
type ==
Low)? 0 : 3;
598 for(
int i=upper_threshold;
i >= lower_threshold;--
i)
616 if(fabsf(dist.first)<10.0)
622 if(fabsf(dist.first)<10.0)
◆ update_distance()
Definition at line 192 of file CMApatterns.cxx.
194 if(std::fabs(NEW.first) < std::fabs(OLD.first)) OLD = NEW;
◆ m_cma_parameters
◆ m_debug
| unsigned long int CMApatterns::m_debug |
|
private |
◆ m_high_pt_matrix
| std::unique_ptr<Matrix> CMApatterns::m_high_pt_matrix |
|
private |
◆ m_highPt0
◆ m_highPt1
◆ m_low_pt_matrix
| std::unique_ptr<Matrix> CMApatterns::m_low_pt_matrix |
|
private |
◆ m_lowPt0
◆ m_lowPt1
◆ m_name
| std::string BaseObject::m_name |
|
privateinherited |
◆ m_number
| int RPCtrigDataObject::m_number |
|
privateinherited |
◆ m_pivot0
◆ m_pivot1
◆ m_sector
| int CMApatterns::m_sector |
|
private |
◆ m_tag
◆ no_distance
The documentation for this class was generated from the following files:
bool station_radius(float &) const
char data[hepevt_bytes_allocation_ATLAS]
RPCtrigDataObject(int, const std::string &)
const std::string & name() const
std::unique_ptr< Matrix > m_low_pt_matrix
bitPATTERN majority(bitPATTERN &, bitPATTERN &) const
std::vector< std::string > patterns
const CMAprogram * lowPt_program() const
void set(const RPCdigit *, int)
void Print(std::ostream &, bool detail) const
const PATTERNidentity & id(void) const
void load_data(int, int, const bitPATTERN &, Matrix *)
static const TRIGdistance no_distance
const CMAidentity & id() const
const bitPATTERN & highPt0(void) const
std::pair< float, float > TRIGdistance
const bitPATTERN & pivot0(void) const
std::unique_ptr< Matrix > m_high_pt_matrix
void set_highPt(const RPCdigit *)
static constexpr int confirm_channels
void set_pivot(const RPCdigit *)
const RPCdigit * pivot_hit(void) const
CMAtrigger trigger_threshold(int, int, TrigType) const
const CMAparameters & cma_parameters(void) const
uint8_t trig_thr0_maj_reg() const
POOL::TEvent event(POOL::TEvent::kClassAccess)
bool station_phi(float &) const
uint8_t trig_thr1_maj_reg() const
CMAtrigger trigger_window(TRIGdistance, TrigType) const
const CMAprogram * highPt_program() const
void create_hardware(TrigType, uint NOBXS, uint BCZERO)
const CMAparameters * m_cma_parameters
unsigned long int m_debug
void load_digit(const RPCdigit *)
const bitPATTERN & highPt1(void) const
void update_distance(const TRIGdistance &, TRIGdistance &) const
unsigned long int debug(void) const
bool give_connection(int, int, CMAinput &, int &, int &) const
const uint32_t * bytes(void) const
const bitPATTERN & lowPt1(void) const
uint32_t overlap1(void) const
std::vector< std::string > signatures(const std::string &chain)
const bitPATTERN & lowPt0(void) const
std::priority_queue< CMAtrigger > TrigSigns
uint8_t trig_thr2_maj_reg() const
const TRIGGERidentity & trigger(void) const
def time(flags, cells_name, *args, **kw)
ViewType view(void) const
bool searchForHigh(void) const
void search_for_lowPt(Lvl1RPCalgo, TrigSigns &) const
const RPCdecoder & decoding(void) const
void search_signatures(Lvl1RPCalgo, TrigType, TrigSigns &, const bitPATTERN &, const bitPATTERN &) const
const TRIGdistance lowest_distance(const bitPATTERN &, const bitPATTERN &) const
static constexpr int pivot_channels
uint32_t overlap2(void) const
const bitPATTERN & pivot1(void) const
bitPATTERN decluster(const bitPATTERN &) const
const TRIGdistance distance(const RPCdigit *, const RPCdigit *) const
void set_lowPt(const RPCdigit *)
void search_for_highPt(Lvl1RPCalgo, TrigSigns &) const
bool station_eta(float &) const
int windows(float distance, float eta_pivot, int thr, int sector)