1 #ifndef HBTprocessorCOMMON
2 #define HBTprocessorCOMMON
29 #ifndef __CFORTRAN_LOADED
37 1 ref_control,print_full,print_sector_data,n_pid_types,pid(2),
38 2 n_events,switch_1d,switch_3d,switch_type,switch_coherence,
39 3 switch_coulomb,switch_fermi_bose,n_part_1_trk,n_part_2_trk,
40 4 n_part_tot_trk,n_part_1_trk2,n_part_2_trk2,n_part_tot_trk2,
41 5 n_part_used_1_trk,n_part_used_2_trk,n_part_used_1_trk2,
42 6 n_part_used_2_trk2,n_part_used_1_ref,n_part_used_2_ref,
43 7 n_part_used_1_inc,n_part_used_2_inc,num_pairs_like,
44 8 num_pairs_unlike,num_pairs_like_ref,num_pairs_unlike_ref,
45 9 num_pairs_like_inc,num_pairs_unlike_inc,event_line_counter,
46 1 maxit,irand,file10_line_counter,
47 2 lambda,R_1d,Rside,Rout,Rlong,Rperp,Rparallel,R0,Q0,deltap,
48 3 delchi,pi,rad,hbc,chisq_wt_like_1d,chisq_wt_unlike_1d,
49 4 chisq_wt_like_3d_fine,chisq_wt_unlike_3d_fine,
50 5 chisq_wt_like_3d_coarse,chisq_wt_unlike_3d_coarse,
51 6 chisq_wt_hist1_1,chisq_wt_hist1_2,mass1,mass2,trk_accep
57 typedef struct //PARAMETERS
63 Int_t print_full; // Full print out option - each event
64 Int_t print_sector_data; // Print sector overflow diagnostics
65 Int_t n_pid_types; // # particle ID types to correlate
66 Int_t pid[2]; // Geant particle ID #s, max of 2 types
67 Int_t n_events ; // # events in input event text file
68 Int_t switch_1d; // Include 1D correlations
69 Int_t switch_3d; // Include 3D correlations
70 Int_t switch_type ; // For like, unlike or both PID pairs
71 Int_t switch_coherence; // To include incoh/coher mixed source
72 Int_t switch_coulomb; // Coulomb correction selection options
73 Int_t switch_fermi_bose; // For fermions or bosons
75 // Numbers of particles and pairs:
77 Int_t n_part_1_trk; // Total # PID #1 in 'trk', all flags
78 Int_t n_part_2_trk; // Total # PID #2 in 'trk', all flags
79 Int_t n_part_tot_trk; // Total # all part. in 'trk', all flgs
80 Int_t n_part_used_1_trk; // # PID#1, used (flag=0) in 'trk'
81 Int_t n_part_used_2_trk; // # PID#2, used (flag=0) in 'trk'
83 Int_t n_part_1_trk2; // Total # PID #1 in 'trk2', all flags
84 Int_t n_part_2_trk2; // Total # PID #2 in 'trk2', all flags
85 Int_t n_part_tot_trk2; // Total # all part. in 'trk2', all flgs
86 Int_t n_part_used_1_trk2; // # PID#1, used (flag=0) in 'trk2'
87 Int_t n_part_used_2_trk2; // # PID#2, used (flag=0) in 'trk2'
89 Int_t n_part_used_1_ref; // # PID#1, used (flag=0) in Reference
90 Int_t n_part_used_2_ref; // # PID#2, used (flag=0) in Reference
91 Int_t n_part_used_1_inc; // # PID#1, used (flag=0) in Inclusive
92 Int_t n_part_used_2_inc; // # PID#2, used (flag=0) in Inclusive
94 Int_t num_pairs_like; // # like pairs used (flag=0) in fit
95 Int_t num_pairs_unlike; // # unlike pairs used (flag=0) in fit
96 Int_t num_pairs_like_ref; // # like pairs used (flag=0) in Ref.
97 Int_t num_pairs_unlike_ref; // # unlike pairs used (flag=0) in Ref.
98 Int_t num_pairs_like_inc; // # like pairs used (flag=0) in Incl.
99 Int_t num_pairs_unlike_inc; // # unlike pairs used (flag=0) in Incl.
103 Int_t event_line_counter; // Input event text file line counter
104 Int_t maxit; // Max # iterations in track adjustment
105 Int_t irand; // Random # starting seed (Def=12345)
106 Int_t file10_line_counter; // Output, correlated event text file
109 // Correlation Model Parameters:
111 Float_t lambda; // Chaoticity parameter
112 Float_t R_1d; // Spherical source radius (fm)
113 Float_t Rside; // 3D Bertsch-Pratt source 'side' R (fm)
114 Float_t Rout; // 3D Bertsch-Pratt source 'out' R (fm)
115 Float_t Rlong; // 3D Bertsch-Pratt source 'long' R (fm)
116 Float_t Rperp; // 3D YKP source transverse radius (fm)
117 Float_t Rparallel; // 3D YKP source longitudinal radius(fm)
118 Float_t R0; // 3D YKP source emission time durat(fm)
119 Float_t Q0; // NA35 Coulomb parameter (GeV/c) or
120 // // Coul radius for Pratt finite src (fm)
122 // Search Control Parameters:
125 Float_t deltap; // Max limit for x,y,z momt shifts(GeV/c)
126 Float_t delchi; // Min% change in Chi-Sq to stop iterat.
128 Float_t pi;// = 3.141592654; // PI
130 Float_t rad;// = 180.0/3.14; // radian = 180.0/pi
131 Float_t hbc;// = 0.19732891; // h-bar-c (GeV*fm)
133 // Chi-Square Values:
135 Float_t chisq_wt_like_1d; // 1D, Like pairs
136 Float_t chisq_wt_unlike_1d; // 1D, Unlike pairs
137 Float_t chisq_wt_like_3d_fine; // 3D, Like pairs, Fine Mesh
138 Float_t chisq_wt_unlike_3d_fine; // 3D, Unlike pairs, Fine Mesh
139 Float_t chisq_wt_like_3d_coarse; // 3D, Like pairs, Coarse Mesh
140 Float_t chisq_wt_unlike_3d_coarse; // 3D, Unlike pairs, Coarse Mesh
141 Float_t chisq_wt_hist1_1; // One-body, particle ID type #1
142 Float_t chisq_wt_hist1_2; // One-body, particle ID type #2
146 Float_t mass1, mass2; // Particle ID# 1 and 2 masses (GeV)
151 // parameter (pi = 3.141592654)
152 // parameter (hbc = 0.19732891)
154 // Random Track Selection Fraction, for low multiplicity particles
156 Float_t trk_accep; // ranges from 0.0 -> 1.0
158 } HBTprocParamsCommon;
160 #define PARAMETERS COMMON_BLOCK(PARAMETERS,parameters)
162 COMMON_BLOCK_DEF(HBTprocParamsCommon,PARAMETERS);
164 //HBTprocParamsCommon PARAMETERS;
167 /************************************************************************************************/
168 /************************************************************************************************/
170 typedef struct //MESH COMMON BLOCK
174 Int_t n_pt_bins; // # one-body pt bins
175 Int_t n_phi_bins; // # one-body phi bins
176 Int_t n_eta_bins; // # one-body eta bins
178 Int_t n_1d_fine; // # bins for 1D, Fine Mesh
179 Int_t n_1d_coarse; // # bins for 1D, Coarse Mesh
180 Int_t n_1d_total; // Total # bins for 1D
181 Int_t n_3d_fine ; // # bins for 3D, Fine Mesh
182 Int_t n_3d_coarse; // # bins for 3D, Coarse Mesh
183 Int_t n_3d_total; // Total # bins for 3D
184 Int_t n_3d_fine_project; // # 3D fine mesh bins to sum over for
186 // Momentum Space Sectors for Track Sorting:
188 Int_t n_px_bins; // # sector bins in px
189 Int_t n_py_bins; // # sector bins in py
190 Int_t n_pz_bins; // # sector bins in pz
191 Int_t n_sectors; // Total # sectors in 3D momentum space
193 // Temporary Momentum Space Sector information storage during trk adjust.
195 Int_t old_sec_ntrk; // Old sector # tracks
196 Int_t old_sec_flag; // Old sector flag value
197 Int_t old_sec_trkid[MAX_TRK_SAVE]; // Old sector track id array
199 Int_t new_sec_ntrk; // New sector # tracks
200 Int_t new_sec_flag; // New sector flag value
201 Int_t new_sec_trkid[MAX_TRK_SAVE]; // New sector track id array
202 Int_t new_sec_save; // New sector ID value
203 Int_t old_sec_save; // Old sector ID value
205 Float_t pt_bin_size ; // One-body pt bin size in (GeV/c)
206 Float_t pt_min; // One-body pt min/max in (GeV/c)
209 Float_t phi_bin_size; // One-body phi bin size in (degrees)
210 Float_t phi_min; // One-body phi min/max in (degrees)
213 Float_t eta_bin_size ; // One-body eta bin size
214 Float_t eta_min; // One-body eta min/max
216 // Two-Body Histograms and Correlation Mesh for 1D and 3D distributions:
218 // // projections onto single axis.
220 Float_t binsize_1d_fine; // Bin Size - 1D, Fine Mesh in (GeV/c)
221 Float_t binsize_1d_coarse; // Bin Size - 1D, Coarse Mesh in (GeV/c)
222 Float_t qmid_1d; // q (GeV/c) at fine-coarse mesh boundary
223 Float_t qmax_1d; // Max q (GeV/c) for 1D distributions
224 Float_t binsize_3d_fine; // Bin Size - 3D, Fine Mesh in (GeV/c)
225 Float_t binsize_3d_coarse; // Bin Size - 3D, Coarse Mesh in (GeV/c)
226 Float_t qmid_3d; // q (GeV/c) at fine-coarse mesh boundary
227 Float_t qmax_3d; // Max q (GeV/c) for 3D distributions
232 Float_t px_min; // Sector range in px in GeV/c
234 Float_t delpx; // Mom. space sector cell size - px(GeV/c)
236 Float_t py_min; // Sector range in py in GeV/c
238 Float_t delpy; // Mom. space sector cell size - py(GeV/c)
240 Float_t pz_min; // Sector range in pz in GeV/c
242 Float_t delpz; // Mom. space sector cell size - pz(GeV/c)
247 #define MESH COMMON_BLOCK(MESH,mesh)
248 COMMON_BLOCK_DEF(HBTprocMeshCommon, MESH);
249 //HBTprocMeshCommon MESH;
251 /************************************************************************************************/
252 /************************************************************************************************/
254 typedef struct //TRACK1 COMMON
256 Int_t trk_id[TRK_MAXLEN]; // Track ID number
257 Int_t trk_px_sec[TRK_MAXLEN]; // px sector number
258 Int_t trk_py_sec[TRK_MAXLEN]; // py sector number
259 Int_t trk_pz_sec[TRK_MAXLEN]; // pz sector number
260 Int_t trk_sector[TRK_MAXLEN]; // unique sector ID number
261 Int_t trk_flag[TRK_MAXLEN]; // normally=0,if 1 indicates track assigned
262 // // to sector with too many tracks, if = 1
263 // // then track is not used. See /sec_trk_map/
264 Int_t trk_out_flag[TRK_MAXLEN]; // flag indicating track in/out of accept.
265 // // non-zero for track pushed out of accept.
266 Int_t trk_merge_flag[TRK_MAXLEN]; // flag indicating track is merged (not used)
267 Int_t trk_ge_pid[TRK_MAXLEN]; // Geant particle ID code number
268 Int_t trk_start_vertex[TRK_MAXLEN]; // From input event file - track's start vrtx
269 Int_t trk_stop_vertex[TRK_MAXLEN]; // From input event file - track's stop vrtx
270 Int_t trk_event_line[TRK_MAXLEN]; // Line # of track in input event text file
272 Float_t trk_px[TRK_MAXLEN]; // x component of track momentum in GeV/c
273 Float_t trk_py[TRK_MAXLEN]; // y component of track momentum in GeV/c
274 Float_t trk_pz[TRK_MAXLEN]; // z component of track momentum in GeV/c
275 Float_t trk_E[TRK_MAXLEN]; // Total energy of track in GeV
276 Float_t trk_pt[TRK_MAXLEN]; // pt of track momentum in GeV/c
277 Float_t trk_phi[TRK_MAXLEN]; // azimuthal angle of track in degrees
278 Float_t trk_eta[TRK_MAXLEN]; // pseudorapidity of track
281 }HBTprocTrack1Common;
283 #define TRACK1 COMMON_BLOCK(TRACK1,track1)
284 COMMON_BLOCK_DEF(HBTprocTrack1Common, TRACK1);
286 /************************************************************************************************/
287 /************************************************************************************************/
289 typedef struct //TRACK2 COMMON
291 Int_t trk2_id[TRK2_MAXLEN]; // Track ID number
292 Int_t trk2_px_sec[TRK2_MAXLEN]; // px sector number
293 Int_t trk2_py_sec[TRK2_MAXLEN]; // py sector number
294 Int_t trk2_pz_sec [TRK2_MAXLEN]; // pz sector number
295 Int_t trk2_sector[TRK2_MAXLEN]; // unique sector ID number
296 Int_t trk2_flag[TRK2_MAXLEN]; // normally=0,if 1 indicates track assigned
297 // // to sector with too many tracks, if = 1
298 // // then track is not used. See /sec_trk2_map/
299 Int_t trk2_out_flag[TRK2_MAXLEN]; // flag indicating track in/out of accept.
300 // // non-zero for track pushed out of accept.
301 Int_t trk2_merge_flag[TRK2_MAXLEN]; // flag indicating track is merged (not used)
302 Int_t trk2_ge_pid[TRK2_MAXLEN]; // Geant particle ID code number
303 Int_t trk2_start_vertex[TRK2_MAXLEN]; // From input event file - track's start vrtx
304 Int_t trk2_stop_vertex[TRK2_MAXLEN]; // From input event file - track's stop vrtx
305 Int_t trk2_event_line[TRK2_MAXLEN]; // Line # of track in input event text file
307 Float_t trk2_px[TRK2_MAXLEN]; // x component of track momentum in GeV/c
308 Float_t trk2_py[TRK2_MAXLEN]; // y component of track momentum in GeV/c
309 Float_t trk2_pz[TRK2_MAXLEN]; // z component of track momentum in GeV/c
310 Float_t trk2_E[TRK2_MAXLEN]; // Total energy of track in GeV
311 Float_t trk2_pt[TRK2_MAXLEN]; // pt of track momentum in GeV/c
312 Float_t trk2_phi[TRK2_MAXLEN]; // azimuthal angle of track in degrees
313 Float_t trk2_eta [TRK2_MAXLEN]; // pseudorapidity of track
315 }HBTprocTrack2Common;
317 #define TRACK2 COMMON_BLOCK(TRACK2,track2)
318 COMMON_BLOCK_DEF(HBTprocTrack2Common, TRACK2);
319 /************************************************************************************************/
320 /************************************************************************************************/
321 typedef struct //SEC_TRK_MAP COMMON BLOCK
324 Int_t stm_sec_id [SEC_MAXLEN]; // unique sector ID number
325 Int_t stm_n_trk_sec[SEC_MAXLEN]; // Number of tracks assigned to sector
326 Int_t stm_flag[SEC_MAXLEN]; // normally=0, if = 1 then more than
327 // // max_trk_sec tracks could have been
328 // // assigned to this sector, however the
329 // // maximum number that can be assigned is
331 Int_t stm_track_id[SEC_MAXLEN][MAX_TRK_SEC]; // Foreign keys to tracks in /track/ that
332 // // are assigned to this sector.
334 }HBTprocSecTrackMapCommon;
336 #define SEC_TRK_MAP COMMON_BLOCK(SEC_TRK_MAP,sec_trk_map)
337 COMMON_BLOCK_DEF(HBTprocSecTrackMapCommon, SEC_TRK_MAP);
339 /************************************************************************************************/
340 /************************************************************************************************/
341 typedef struct //SEC_TRK_MAP2 COMMON BLOCK
344 Int_t stm_sec_id2 [SEC_MAXLEN2]; // unique sector ID number
345 Int_t stm_n_trk_sec2[SEC_MAXLEN2]; // Number of tracks assigned to sector
346 Int_t stm_flag2[SEC_MAXLEN2]; // normally=0, if = 1 then more than
347 // // max_trk_sec tracks could have been
348 // // assigned to this sector, however the
349 // // maximum number that can be assigned is
351 Int_t stm_track_id2[SEC_MAXLEN2][MAX_TRK_SEC2]; // Foreign keys to tracks in /track/ that
352 // // are assigned to this sector.
354 }HBTprocSecTrackMap2Common;
356 #define SEC_TRK_MAP2 COMMON_BLOCK(SEC_TRK_MAP2,sec_trk_map2)
357 COMMON_BLOCK_DEF(HBTprocSecTrackMap2Common, SEC_TRK_MAP2);
359 /************************************************************************************************/
360 /************************************************************************************************/
362 typedef struct //PARTICLE COMMON
364 // Variable Type Declarations:
366 Int_t part_id[PART_MAXLEN]; // Geant particle ID code number; required
367 // // to be equal to the row number
368 Int_t part_charge[PART_MAXLEN]; // Electric charge in units of |e|
369 Float_t part_mass[PART_MAXLEN]; // Rest mass in GeV/c**2
370 Float_t part_lifetime[PART_MAXLEN]; // Proper lifetime in sec.
371 }HBTprocParticleCommon;
373 #define PARTICLE COMMON_BLOCK(PARTICLE,particle)
374 COMMON_BLOCK_DEF(HBTprocParticleCommon, PARTICLE);
376 /************************************************************************************************/
377 /************************************************************************************************/
378 typedef struct //CORRELATIONS COMMON
380 // One-dimensional Functions:
382 Float_t c2mod_like_1d[MAX_C2_1D];
383 Float_t c2mod_unlike_1d[MAX_C2_1D];
384 Float_t c2fit_like_1d[MAX_C2_1D];
385 Float_t c2fit_unlike_1d[MAX_C2_1D];
386 Float_t c2err_like_1d[MAX_C2_1D];
387 Float_t c2err_unlike_1d[MAX_C2_1D];
389 // Three-dimensional Functions:
391 Float_t c2mod_like_3d_fine[MAX_C2_3D][MAX_C2_3D][MAX_C2_3D];
392 Float_t c2mod_unlike_3d_fine[MAX_C2_3D][MAX_C2_3D][MAX_C2_3D];
393 Float_t c2mod_like_3d_coarse[MAX_C2_3D][MAX_C2_3D][MAX_C2_3D];
394 Float_t c2mod_unlike_3d_coarse[MAX_C2_3D][MAX_C2_3D][MAX_C2_3D];
395 Float_t c2fit_like_3d_fine[MAX_C2_3D][MAX_C2_3D][MAX_C2_3D];
396 Float_t c2fit_unlike_3d_fine[MAX_C2_3D][MAX_C2_3D][MAX_C2_3D];
397 Float_t c2fit_like_3d_coarse[MAX_C2_3D][MAX_C2_3D][MAX_C2_3D];
398 Float_t c2fit_unlike_3d_coarse[MAX_C2_3D][MAX_C2_3D][MAX_C2_3D];
399 Float_t c2err_like_3d_fine[MAX_C2_3D][MAX_C2_3D][MAX_C2_3D];
400 Float_t c2err_unlike_3d_fine[MAX_C2_3D][MAX_C2_3D][MAX_C2_3D];
401 Float_t c2err_like_3d_coarse[MAX_C2_3D][MAX_C2_3D][MAX_C2_3D];
402 Float_t c2err_unlike_3d_coarse[MAX_C2_3D][MAX_C2_3D][MAX_C2_3D];
405 }HBTprocCorrelCommon;
407 #define CORRELATIONS COMMON_BLOCK(CORRELATIONS,correlations)
408 COMMON_BLOCK_DEF(HBTprocCorrelCommon, CORRELATIONS);
410 /************************************************************************************************/
411 /************************************************************************************************/
412 typedef struct //COULMB
414 Float_t c2_coul_like[MAX_C2_COUL];
415 Float_t c2_coul_unlike[MAX_C2_COUL];
416 Float_t q_coul[MAX_C2_COUL];
417 }HBTprocCoulumbCommon;
419 #define COULMB COMMON_BLOCK(COULMB,coulmb)
421 COMMON_BLOCK_DEF(HBTprocCoulumbCommon,COULMB);
423 /************************************************************************************************/
424 /************************************************************************************************/
428 Float_t num_iter[MAX_EVENTS];
431 Float_t n_part_used_1_store[MAX_EVENTS];
434 Float_t n_part_used_2_store[MAX_EVENTS];
437 Float_t n_part_tot_store[MAX_EVENTS];
438 Float_t npart_tot_mean;
439 Float_t npart_tot_rms;
440 Float_t num_sec_flagged_store[MAX_EVENTS];
441 Float_t nsec_flag_mean;
442 Float_t nsec_flag_rms;
443 Float_t frac_trks_out[MAX_EVENTS];
444 Float_t frac_trks_out_mean;
445 Float_t frac_trks_out_rms;
446 Float_t frac_trks_flag[MAX_EVENTS];
447 Float_t frac_trks_flag_mean;
448 Float_t frac_trks_flag_rms;
449 Float_t chisq_like_1d_store[MAX_EVENTS];
450 Float_t chi_l1d_mean;
452 Float_t chisq_unlike_1d_store[MAX_EVENTS];
453 Float_t chi_u1d_mean;
456 }HBTprocEventSummaryCommon;
458 #define EVENT_SUMMARY COMMON_BLOCK(EVENT_SUMMARY,event_summary)
460 COMMON_BLOCK_DEF(HBTprocEventSummaryCommon,EVENT_SUMMARY);
461 /************************************************************************************************/
462 /************************************************************************************************/
463 typedef struct// common/histograms/
465 Int_t hist1_pt_1[MAX_H_1D];
466 Int_t hist1_phi_1[MAX_H_1D];
467 Int_t hist1_eta_1[MAX_H_1D];
468 Int_t hist1_pt_2[MAX_H_1D];
469 Int_t hist1_phi_2[MAX_H_1D];
470 Int_t hist1_eta_2[MAX_H_1D];
471 Int_t htmp1_pt_1[MAX_H_1D];
472 Int_t htmp1_phi_1[MAX_H_1D];
473 Int_t htmp1_eta_1[MAX_H_1D];
474 Int_t htmp1_pt_2[MAX_H_1D];
475 Int_t htmp1_phi_2[MAX_H_1D];
476 Int_t htmp1_eta_2[MAX_H_1D];
477 Int_t href1_pt_1[MAX_H_1D];
478 Int_t href1_phi_1[MAX_H_1D];
479 Int_t href1_eta_1[MAX_H_1D];
480 Int_t href1_pt_2[MAX_H_1D];
481 Int_t href1_phi_2[MAX_H_1D];
482 Int_t href1_eta_2[MAX_H_1D];
483 Int_t hinc1_pt_1[MAX_H_1D];
484 Int_t hinc1_phi_1[MAX_H_1D];
485 Int_t hinc1_eta_1[MAX_H_1D];
486 Int_t hinc1_pt_2[MAX_H_1D];
487 Int_t hinc1_phi_2[MAX_H_1D];
488 Int_t hinc1_eta_2[MAX_H_1D];
489 Int_t hist_like_1d[MAX_H_1D];
490 Int_t hist_unlike_1d[MAX_H_1D];
491 Int_t htmp_like_1d[MAX_H_1D];
492 Int_t htmp_unlike_1d[MAX_H_1D];
493 Int_t href_like_1d[MAX_H_1D];
494 Int_t href_unlike_1d[MAX_H_1D];
495 Int_t hinc_like_1d[MAX_H_1D];
496 Int_t hinc_unlike_1d[MAX_H_1D];
498 Int_t hist_like_3d_fine[MAX_H_3D][MAX_H_3D][MAX_H_3D];
499 Int_t hist_unlike_3d_fine[MAX_H_3D][MAX_H_3D][MAX_H_3D];
500 Int_t hist_like_3d_coarse[MAX_H_3D][MAX_H_3D][MAX_H_3D];
501 Int_t hist_unlike_3d_coarse[MAX_H_3D][MAX_H_3D][MAX_H_3D];
502 Int_t htmp_like_3d_fine[MAX_H_3D][MAX_H_3D][MAX_H_3D];
503 Int_t htmp_unlike_3d_fine[MAX_H_3D][MAX_H_3D][MAX_H_3D];
504 Int_t htmp_like_3d_coarse[MAX_H_3D][MAX_H_3D][MAX_H_3D];
505 Int_t htmp_unlike_3d_coarse[MAX_H_3D][MAX_H_3D][MAX_H_3D];
506 Int_t href_like_3d_fine[MAX_H_3D][MAX_H_3D][MAX_H_3D];
507 Int_t href_unlike_3d_fine[MAX_H_3D][MAX_H_3D][MAX_H_3D];
508 Int_t href_like_3d_coarse[MAX_H_3D][MAX_H_3D][MAX_H_3D];
509 Int_t href_unlike_3d_coarse[MAX_H_3D][MAX_H_3D][MAX_H_3D];
510 Int_t hinc_like_3d_fine[MAX_H_3D][MAX_H_3D][MAX_H_3D];
511 Int_t hinc_unlike_3d_fine[MAX_H_3D][MAX_H_3D][MAX_H_3D];
512 Int_t hinc_like_3d_coarse[MAX_H_3D][MAX_H_3D][MAX_H_3D];
513 Int_t hinc_unlike_3d_coarse[MAX_H_3D][MAX_H_3D][MAX_H_3D];
515 }HBTprocHistosCommon;
517 #define HISTOGRAMS COMMON_BLOCK(HISTOGRAMS,histograms)
519 COMMON_BLOCK_DEF(HBTprocHistosCommon,HISTOGRAMS);
521 /************************************************************************************************/
522 /************************************************************************************************/