5#ifndef TRIGL2MUONSA_CLUSTERPATFINDER_H
6#define TRIGL2MUONSA_CLUSTERPATFINDER_H
39 for(
int i=0; i < 3; i++){
47 for(
int i=0; i < 8; i++){
68 std::vector<double> zz;
83 const std::string& name,
84 const IInterface* parent);
88 void addCluster(
const std::string& stationName,
92 unsigned int doubletR,
93 double gPosX,
double gPosY,
double gPosZ,
97 std::vector<std::vector<double>>& bw,
101 std::vector<double>& phi_outer,
105 bool patfinder_forEta(std::vector<TrigL2MuonSA::ClusterPattern>& crPatterns,
108 bool patfinder(std::vector<TrigL2MuonSA::ClusterPattern>& crPattern,
111 bool deltaOK(
int l1,
int l2,
double x1,
double x2,
int isphi,
double &delta)
const;
113 double calibR(
const std::string& stationName,
double R,
double Phi)
const;
117 void removeSimilarRoad(std::vector<TrigL2MuonSA::ClusterPattern>& crPatterns)
const;
120 std::vector<TrigL2MuonSA::ClusterPattern>& crPatterns)
const;
122 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