]>
Commit | Line | Data |
---|---|---|
1 | /////////////////////////////////////////////////////////////////////////// | |
2 | // // | |
3 | // AliFemtoPicoEventCollectionVectorHideAway: a helper class for // | |
4 | // managing many mixing buffers with up to three variables used for // | |
5 | // binning. // | |
6 | // // | |
7 | /////////////////////////////////////////////////////////////////////////// | |
8 | ||
9 | #ifndef ALIFEMTOPICOEVENTCOLLECTIONVECTORHIDEAWAY_H | |
10 | #define ALIFEMTOPICOEVENTCOLLECTIONVECTORHIDEAWAY_H | |
11 | #include "AliFemtoPicoEvent.h" | |
12 | #include "AliFemtoPicoEventCollection.h" | |
13 | #include "AliFemtoPicoEventCollectionVector.h" | |
14 | #include <vector> | |
15 | #include <list> | |
16 | #include <float.h> | |
17 | #include <limits.h> | |
18 | ||
19 | #if !defined(ST_NO_NAMESPACES) | |
20 | using std::vector; | |
21 | using std::list; | |
22 | #endif | |
23 | ||
24 | class AliFemtoPicoEventCollectionVectorHideAway { | |
25 | public: | |
26 | AliFemtoPicoEventCollectionVectorHideAway(int bx=1, double lx=-FLT_MAX, double ux=FLT_MAX, | |
27 | int by=1, double ly=-FLT_MAX, double uy=FLT_MAX, | |
28 | int bz=1, double lz=-FLT_MAX, double uz=FLT_MAX); | |
29 | AliFemtoPicoEventCollectionVectorHideAway(const AliFemtoPicoEventCollectionVectorHideAway& aColl); | |
30 | ~AliFemtoPicoEventCollectionVectorHideAway(); | |
31 | AliFemtoPicoEventCollectionVectorHideAway& operator=(const AliFemtoPicoEventCollectionVectorHideAway& aColl); | |
32 | ||
33 | AliFemtoPicoEventCollection* PicoEventCollection(int bx, int by, int bz); | |
34 | AliFemtoPicoEventCollection* PicoEventCollection(double x, double y=0, double z=0); | |
35 | unsigned int GetBinXNumber(double x); | |
36 | unsigned int GetBinYNumber(double y); | |
37 | unsigned int GetBinZNumber(double z); | |
38 | private: | |
39 | int fBinsTot; // Total number of bins | |
40 | int fBinsx,fBinsy,fBinsz; // Number of bins on x, y, z axis | |
41 | double fMinx,fMiny,fMinz; // Minima on x, y, z axis | |
42 | double fMaxx,fMaxy,fMaxz; // Maxima on x, y, z axis | |
43 | double fStepx,fStepy,fStepz; // Steps on x, y, z axis | |
44 | AliFemtoPicoEventCollection* fCollection; // Pico event collection | |
45 | AliFemtoPicoEventCollectionVector fCollectionVector; // Collection vector | |
46 | }; | |
47 | ||
48 | #endif |