1 #ifndef  D0RunIconeJets_HepEntity_class 
    2 #define  D0RunIconeJets_HepEntity_class 
    4 #include "inline_maths.h" 
    5 #include <fastjet/internal/base.hh> 
    7 FASTJET_BEGIN_NAMESPACE
 
   48   HepEntityI(
double E_in, 
double px_in, 
double py_in, 
double pz_in,
 
   49              int index_in = -1) : index(index_in) {
 
   51     double pt = sqrt(px_in*px_in+py_in*py_in);
 
   52     double p = sqrt(pt*pt+pz_in*pz_in);
 
   53     phi = inline_maths::phi(px_in,py_in);
 
   54     double theta = asin(pt/p);
 
   55     eta = inline_maths::eta(theta);
 
   64    HepEntityI(
const HepEntityI& in) : Et(in.Et), eta(in.eta), phi(in.phi), index(in.index) {
 
   71   inline double pT()
 const {
 
   75   inline double px()
 const {
 
   79   inline double py()
 const {
 
   83   inline double pz()
 const {
 
   87   inline double E()
 const {
 
   92   inline void p4vec(
float* p)
 const {
 
  101   inline void Add(
const HepEntityI el) {
 
  107     eta += w2*(el.eta - eta);
 
  108     phi += w2*inline_maths::delta_phi(el.phi, phi); 
 
  114   inline void Fill(
double E_in, 
double px_in, 
double py_in, 
double pz_in, 
int index_in) {
 
  115     double pt = sqrt(px_in*px_in+py_in*py_in);
 
  116     double p = sqrt(pt*pt+pz_in*pz_in);
 
  117     phi = inline_maths::phi(px_in,py_in);
 
  118     double theta = asin(pt/p);
 
  119     eta = inline_maths::eta(theta);
 
  121     Et = E_in*sin(theta);
 
  143 FASTJET_END_NAMESPACE