siscone::hash_cones Class Reference

list of cones candidates. More...

#include <hash.h>

Collaboration diagram for siscone::hash_cones:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 hash_cones (int _Np, double _R2)
 constructor with initialisation
 ~hash_cones ()
 destructor
int insert (Cmomentum *v, Cmomentum *parent, Cmomentum *child, bool p_io, bool c_io)
 insert a new candidate into the hash.
int insert (Cmomentum *v)
 insert a new candidate into the hash.
bool is_inside (Cmomentum *centre, Cmomentum *v)
 test if a particle is inside a cone of given centre.

Public Attributes

hash_element ** hash_array
 the cone data itself
int n_cones
 number of elements
int mask
 number of cells-1
double R2
 circle radius (squared) NOTE: need to be set before any call to 'insert'


Detailed Description

list of cones candidates.

We store in this class all the hash_elements and give functions to manipulate them.

Definition at line 62 of file hash.h.


Constructor & Destructor Documentation

siscone::hash_cones::hash_cones ( int  _Np,
double  _R2 
)

constructor with initialisation

Parameters:
_Np number of particles
_R2 cone radius (squared)

Definition at line 47 of file hash.cpp.

References hash_array, mask, n_cones, and R2.


Member Function Documentation

int siscone::hash_cones::insert ( Cmomentum v,
Cmomentum parent,
Cmomentum child,
bool  p_io,
bool  c_io 
)

insert a new candidate into the hash.

Parameters:
v 4-momentum of te cone to add
parent parent particle defining the cone
child child particle defining the cone
p_io whether the parent has to belong to the cone or not
c_io whether the child has to belong to the cone or not
Returns:
0 on success, 1 on error

Definition at line 95 of file hash.cpp.

References siscone::Cmomentum::build_etaphi(), siscone::Cmomentum::eta, siscone::hash_element::eta, hash_array, is_inside(), siscone::hash_element::is_stable, mask, n_cones, siscone::hash_element::next, siscone::Cmomentum::phi, siscone::hash_element::phi, siscone::hash_element::ref, siscone::Creference::ref, and siscone::Cmomentum::ref.

int siscone::hash_cones::insert ( Cmomentum v  ) 

insert a new candidate into the hash.

Parameters:
v 4-momentum of te cone to add Note, in this case, we assume stability. We also assume that eta and phi are computed for v
Returns:
0 on success, 1 on error

Definition at line 158 of file hash.cpp.

References siscone::Cmomentum::eta, siscone::hash_element::eta, hash_array, siscone::hash_element::is_stable, mask, n_cones, siscone::hash_element::next, siscone::Cmomentum::phi, siscone::hash_element::phi, siscone::hash_element::ref, siscone::Creference::ref, and siscone::Cmomentum::ref.

bool siscone::hash_cones::is_inside ( Cmomentum centre,
Cmomentum v 
) [inline]

test if a particle is inside a cone of given centre.

check if the particle of coordinates 'v' is inside the circle of radius R centered at 'centre'.

Parameters:
centre centre of the circle
v particle to test
Returns:
true if inside, false if outside

Definition at line 206 of file hash.cpp.

References siscone::Cmomentum::eta, siscone::Cmomentum::phi, and R2.

Referenced by insert().


The documentation for this class was generated from the following files:

The SISCone project has been developed by Gavin Salam and Gregory Soyez
Documentation generated on Thu Apr 3 10:22:52 2008 for SISCone by  Doxygen 1.5.5