SISCone  2.0.6
hash.h
1 // -*- C++ -*-
3 // File: hash.h //
4 // Description: header file for classes hash_element and hash_cones //
5 // This file is part of the SISCone project. //
6 // For more details, see http://projects.hepforge.org/siscone //
7 // //
8 // Copyright (c) 2006 Gavin Salam and Gregory Soyez //
9 // //
10 // This program is free software; you can redistribute it and/or modify //
11 // it under the terms of the GNU General Public License as published by //
12 // the Free Software Foundation; either version 2 of the License, or //
13 // (at your option) any later version. //
14 // //
15 // This program is distributed in the hope that it will be useful, //
16 // but WITHOUT ANY WARRANTY; without even the implied warranty of //
17 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the //
18 // GNU General Public License for more details. //
19 // //
20 // You should have received a copy of the GNU General Public License //
21 // along with this program; if not, write to the Free Software //
22 // Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA //
23 // //
24 // $Revision:: 224 $//
25 // $Date:: 2008-05-16 19:58:30 +0200 (Fri, 16 May 2008) $//
27 
28 #ifndef __HASH_H__
29 #define __HASH_H__
30 
31 #include "momentum.h"
32 #include "reference.h"
33 
34 namespace siscone{
35 
46  public:
48  double eta;
49  double phi;
50  bool is_stable;
51 
53 };
54 
62 class hash_cones{
63  public:
67  hash_cones(int _Np, double _R2);
68 
70  ~hash_cones();
71 
81  int insert(Cmomentum *v, Cmomentum *parent, Cmomentum *child, bool p_io, bool c_io);
82 
90  int insert(Cmomentum *v);
91 
94 
96  int n_cones;
97 
99 #ifdef DEBUG_STABLE_CONES
100  int n_occupied_cells;
101 #endif
102 
104  int mask;
105 
108  double R2;
109 
118  inline bool is_inside(Cmomentum *centre, Cmomentum *v);
119 };
120 
121 }
122 #endif
Creference ref
reference
Definition: hash.h:47
hash_element * next
pointer to the next element
Definition: hash.h:52
base class for dynamic coordinates management
Definition: momentum.h:49
double eta
centre: eta coordinate
Definition: hash.h:48
Definition: area.cpp:33
information on store cones candidates.
Definition: hash.h:45
double R2
circle radius (squared) NOTE: need to be set before any call to 'insert'
Definition: hash.h:108
bool is_stable
true if stable w.r.t. "border particles"
Definition: hash.h:50
int n_cones
number of elements
Definition: hash.h:96
hash_element ** hash_array
the cone data itself
Definition: hash.h:93
list of cones candidates.
Definition: hash.h:62
double phi
centre: phi coordinate
Definition: hash.h:49
references used for checksums.
Definition: reference.h:43
int mask
number of occupied cells
Definition: hash.h:104
The SISCone project has been developed by Gavin Salam and Gregory Soyez
Documentation generated for SISCone by  Doxygen 1.8.13