5#ifndef TRIGL2MUONSA_CLUSTERPATFINDER_H
6#define TRIGL2MUONSA_CLUSTERPATFINDER_H
41 for(
int i=0; i < 3; i++){
49 for(
int i=0; i < 8; i++){
70 std::vector<double> zz;
85 const std::string& name,
86 const IInterface* parent);
90 void addCluster(
const std::string& stationName,
94 unsigned int doubletR,
95 double gPosX,
double gPosY,
double gPosZ,
99 std::vector<std::vector<double>>& bw,
103 std::vector<double>& phi_outer,
107 bool patfinder_forEta(std::vector<TrigL2MuonSA::ClusterPattern>& crPatterns,
110 bool patfinder(std::vector<TrigL2MuonSA::ClusterPattern>& crPattern,
113 bool deltaOK(
int l1,
int l2,
double x1,
double x2,
int isphi,
double &delta)
const;
115 double calibR(
const std::string& stationName,
double R,
double Phi)
const;
119 void removeSimilarRoad(std::vector<TrigL2MuonSA::ClusterPattern>& crPatterns)
const;
122 std::vector<TrigL2MuonSA::ClusterPattern>& crPatterns)
const;
124 std::vector<TrigL2MuonSA::ClusterPattern>& crPatterns)
const;
double calibR(const std::string &stationName, double R, double Phi) const
void removeSimilarRoad(std::vector< TrigL2MuonSA::ClusterPattern > &crPatterns) const
ClusterPatFinder(const std::string &type, const std::string &name, const IInterface *parent)
bool findPatternPhi(std::vector< double > &phi_middle, std::vector< double > &phi_outer, TrigL2MuonSA::RpcLayerClusters &rpcLayerClusters) const
bool patfinder(std::vector< TrigL2MuonSA::ClusterPattern > &crPattern, TrigL2MuonSA::RpcLayerClusters &rpcLayerClusters) const
bool deltaOK(int l1, int l2, double x1, double x2, int isphi, double &delta) const
void setGroup(int &nGroup, std::vector< TrigL2MuonSA::ClusterPattern > &crPatterns) const
void selectGoodFit(int nGroup, std::vector< TrigL2MuonSA::ClusterPattern > &crPatterns) const
bool findPatternEta(std::vector< std::vector< double > > &aw, std::vector< std::vector< double > > &bw, TrigL2MuonSA::RpcLayerClusters &rpcLayerClusters) const
void abcal(unsigned int result_pat, size_t index[], double aw[], double bw[], TrigL2MuonSA::RpcLayerClusters &rpcLayerClusters) const
bool patfinder_forEta(std::vector< TrigL2MuonSA::ClusterPattern > &crPatterns, TrigL2MuonSA::RpcLayerClusters &rpcLayerClusters) const
void addCluster(const std::string &stationName, int stationEta, bool measuresPhi, unsigned int gasGap, unsigned int doubletR, double gPosX, double gPosY, double gPosZ, TrigL2MuonSA::RpcLayerClusters &rpcLayerClusters) const
bool operator==(const ClusterPattern &clp) const
std::multimap< int, int > groupCand
std::vector< std::vector< double > > clusters_in_layer_Z
std::vector< std::list< double > > clusters_in_layer_phi
std::vector< std::vector< double > > clusters_in_layer_R
std::vector< std::list< double > > clusters_in_layer_eta