1 #include <fastjet/ClusterSequence.hh> 
    9 using namespace fastjet;
 
   28     static bool init = 
false;
 
   35   algorithms[
"CAMBRIDGE_FOR_PASSIVE"] = cambridge_for_passive_algorithm;
 
   36   algorithms[
"GENKT_FOR_PASSIVE"] = genkt_for_passive_algorithm;
 
   47 hijfst_control(
int enable, vector<string> valgorithm, vector<float> vR, vector<int> vPID, vector<float> vEtaMin, vector<float> vEtaMax, vector<float> vEtMin)
 
   49   enablep = (enable==1) ? 
true: 
false;
 
   52   for (
unsigned int i = 0; i < valgorithm.size(); ++i)
 
   54       string algorithmName = valgorithm[i];
 
   55       transform(algorithmName.begin(), algorithmName.end(), algorithmName.begin(), ::toupper);
 
   60       algo.EtaMin = vEtaMin[i];
 
   61       algo.EtaMax = vEtaMax[i];
 
   62       algo.EtMin = vEtMin[i];
 
   74   int *K1 = 
new(K)     
int[M];
 
   75   int *K2 = 
new(K+
M)   
int[M];
 
   76   int *K3 = 
new(K+2*
M) 
int[M];
 
   77   int *K4 = 
new(K+3*
M) 
int[M];
 
   78   int *K5 = 
new(K+4*
M) 
int[M];
 
   80   float *px = 
new(P)     
float[M];
 
   81   float *py = 
new(P+
M)   
float[M];
 
   82   float *pz = 
new(P+2*
M) 
float[M];
 
   83   float *E  = 
new(P+3*
M) 
float[M];
 
   84   float *
m  = 
new(P+4*
M) 
float[M];
 
   86   float *V1 = 
new(V)     
float[M];
 
   87   float *V2 = 
new(V+
M)   
float[M];
 
   88   float *V3 = 
new(V+2*
M) 
float[M];
 
   89   float *V4 = 
new(V+3*
M) 
float[M];
 
   90   float *V5 = 
new(V+4*
M) 
float[M];
 
   92   std::vector<PseudoJet> particles;
 
   94   for (
int i = 0; i < *
n; i++)
 
   99     particles.push_back(PseudoJet(px[i], py[i], pz[i], E[i]));
 
  110       ClusterSequence cs(particles, jet_def);
 
  111       std::vector<PseudoJet> jets = cs.inclusive_jets();
 
  116       for (
unsigned i = 0; i < jets.size(); i++) 
 
  132     px[j] = jets[i].px();
 
  133     py[j] = jets[i].py();
 
  134     pz[j] = jets[i].pz();