HYDRA_development_version
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
hseqarr.h
Go to the documentation of this file.
1 #ifndef HSEQARRI_H
2 #define HSEQARRI_H
3 
4 #include "TObject.h"
5 
6 class HSeqArrBlock : public TObject {
7  protected:
8  enum {blockSize=0x40000, // size of one block of array in bytes
9  nBits=18, // index>>nBits - is number of array block
10  bitMask=0x3FFFF}; // index&BITSMASK - is element index in block
11  Char_t arr[blockSize];
12  UInt_t blockNumber; // array block number
13  HSeqArrBlock* nextBlock; // pointer to the next array block
14 
15  public: // All functions in this class are NOT for user!!!
16  HSeqArrBlock(void);
18  virtual ~HSeqArrBlock(void);
19  Bool_t expand(void);
20  static UInt_t blockIndex(UInt_t n) {return n>>nBits;}
21  static UInt_t indexInBlock(UInt_t i) {return i&bitMask;}
22  Char_t* getArr(void) {return arr;}
23  UInt_t getBlockNumber(void) {return blockNumber;}
25 
26  ClassDef(HSeqArrBlock,0)
27 };
28 
29 
30 class HSeqArrIter;
31 
36 
37 class HSeqArr : public TObject {
38  protected:
39  ESeqArrType type; // array type
40  HSeqArrBlock* firstBlock; // pinter to the first block of array
41  HSeqArrBlock* lastBlock; // pinter to the last block of array
42  UInt_t wordLength; // length of word in array
43 
44  UInt_t size; // total size of array in bytes
45  UInt_t nBlocks; // number of blocks in array
46  UInt_t blockLength; // size of HSeqArrBlock object in bytes
47 
48  HSeqArrBlock* block; // pointer to the current HSeqArrBlock object
49  UInt_t index; // current index of element in full array (0-size)
50  Char_t* cElem; // pointer to the current element
51  Bool_t isFrst; // ???
52 
53  protected:
54  void init(ESeqArrType tp);
55  Bool_t setCurrBlock(UInt_t n);
56  Bool_t err(ESeqArrType tp);
57  Bool_t setNotFirst(void) {isFrst=kFALSE; return kTRUE;}
58  Bool_t next(ESeqArrType tp);
59  Bool_t nextAExp(ESeqArrType tp);
60 
61  Bool_t set(Char_t &e) {*(Char_t* )cElem=e; return setNotFirst();}
62  Bool_t set(UChar_t &e) {*(UChar_t* )cElem=e; return setNotFirst();}
63  Bool_t set(Short_t &e) {*(Short_t* )cElem=e; return setNotFirst();}
64  Bool_t set(UShort_t &e) {*(UShort_t* )cElem=e; return setNotFirst();}
65  Bool_t set(Int_t &e) {*(Int_t* )cElem=e; return setNotFirst();}
66  Bool_t set(UInt_t &e) {*(UInt_t* )cElem=e; return setNotFirst();}
67  Bool_t set(Long64_t &e) {*(Long64_t* )cElem=e; return setNotFirst();}
68  Bool_t set(ULong64_t &e) {*(ULong64_t*)cElem=e; return setNotFirst();}
69  Bool_t set(Float_t &e) {*(Float_t* )cElem=e; return setNotFirst();}
70  Bool_t set(Double_t &e) {*(Double_t* )cElem=e; return setNotFirst();}
71  Bool_t set(Bool_t &e) {*(Bool_t* )cElem=e; return setNotFirst();}
72 
73  Bool_t get(Char_t &e) {e=*(Char_t* )cElem; return setNotFirst();}
74  Bool_t get(UChar_t &e) {e=*(UChar_t* )cElem; return setNotFirst();}
75  Bool_t get(Short_t &e) {e=*(Short_t* )cElem; return setNotFirst();}
76  Bool_t get(UShort_t &e) {e=*(UShort_t* )cElem; return setNotFirst();}
77  Bool_t get(Int_t &e) {e=*(Int_t* )cElem; return setNotFirst();}
78  Bool_t get(UInt_t &e) {e=*(UInt_t* )cElem; return setNotFirst();}
79  Bool_t get(Long64_t &e) {e=*(Long64_t* )cElem; return setNotFirst();}
80  Bool_t get(ULong64_t &e) {e=*(ULong64_t*)cElem; return setNotFirst();}
81  Bool_t get(Float_t &e) {e=*(Float_t* )cElem; return setNotFirst();}
82  Bool_t get(Double_t &e) {e=*(Double_t* )cElem; return setNotFirst();}
83  Bool_t get(Bool_t &e) {e=*(Bool_t* )cElem; return setNotFirst();}
84 
85  public:
86  HSeqArr(void) {init(kNoType);}
88  HSeqArr(Char_t) {init(kChar);}
89  ~HSeqArr(void);
90 
91  Bool_t setArrType(ESeqArrType tp);
92  UInt_t getArraySize(void) const {return size/wordLength;}
93  UInt_t getMemSize(void) const;
95  Bool_t isBoundOk(UInt_t i) const {return (i<size) ? kTRUE:kFALSE;}
96 
97  void rewind(void);
98 
99  Bool_t addElement(void); // adding new element and setting cursor
100  Bool_t setCursor(Int_t indArr=-1);
101 
102  void setElement(Char_t e) {if(tpOk(kChar )) set(e);}
103  void setElement(UChar_t e) {if(tpOk(kUChar )) set(e);}
104  void setElement(Short_t e) {if(tpOk(kShort )) set(e);}
105  void setElement(UShort_t e) {if(tpOk(kUShort )) set(e);}
106  void setElement(Int_t e) {if(tpOk(kInt )) set(e);}
107  void setElement(UInt_t e) {if(tpOk(kUInt )) set(e);}
108  void setElement(Long64_t e) {if(tpOk(kLong64 )) set(e);}
109  void setElement(ULong64_t e) {if(tpOk(kULong64)) set(e);}
110  void setElement(Float_t e) {if(tpOk(kFloat )) set(e);}
111  void setElement(Double_t e) {if(tpOk(kDouble )) set(e);}
112  void setElement(Bool_t e) {if(tpOk(kBool )) set(e);}
113 
114  void getElement(Char_t& e) {if(tpOk(kChar )) get(e);}
115  void getElement(UChar_t& e) {if(tpOk(kUChar )) get(e);}
116  void getElement(Short_t& e) {if(tpOk(kShort )) get(e);}
117  void getElement(UShort_t& e) {if(tpOk(kUShort )) get(e);}
118  void getElement(Int_t& e) {if(tpOk(kInt )) get(e);}
119  void getElement(UInt_t& e) {if(tpOk(kUInt )) get(e);}
120  void getElement(Long64_t& e) {if(tpOk(kLong64 )) get(e);}
121  void getElement(ULong64_t& e) {if(tpOk(kULong64)) get(e);}
122  void getElement(Float_t& e) {if(tpOk(kFloat )) get(e);}
123  void getElement(Double_t& e) {if(tpOk(kDouble )) get(e);}
124  void getElement(Bool_t& e) {if(tpOk(kBool )) get(e);}
125 
126  Bool_t addNext(Char_t e) {if(nextAExp(kChar )) return set(e); return kFALSE;}
127  Bool_t addNext(UChar_t e) {if(nextAExp(kUChar )) return set(e); return kFALSE;}
128  Bool_t addNext(Short_t e) {if(nextAExp(kShort )) return set(e); return kFALSE;}
129  Bool_t addNext(UShort_t e) {if(nextAExp(kUShort )) return set(e); return kFALSE;}
130  Bool_t addNext(Int_t e) {if(nextAExp(kInt )) return set(e); return kFALSE;}
131  Bool_t addNext(UInt_t e) {if(nextAExp(kUInt )) return set(e); return kFALSE;}
132  Bool_t addNext(Long64_t e) {if(nextAExp(kLong64 )) return set(e); return kFALSE;}
133  Bool_t addNext(ULong64_t e) {if(nextAExp(kULong64)) return set(e); return kFALSE;}
134  Bool_t addNext(Float_t e) {if(nextAExp(kFloat )) return set(e); return kFALSE;}
135  Bool_t addNext(Double_t e) {if(nextAExp(kDouble )) return set(e); return kFALSE;}
136  Bool_t addNext(Bool_t e) {if(nextAExp(kBool )) return set(e); return kFALSE;}
137 
138  Bool_t getNext(Char_t& e) {if(next(kChar )) return get(e); return kFALSE;}
139  Bool_t getNext(UChar_t& e) {if(next(kUChar )) return get(e); return kFALSE;}
140  Bool_t getNext(Short_t& e) {if(next(kShort )) return get(e); return kFALSE;}
141  Bool_t getNext(UShort_t& e) {if(next(kUShort )) return get(e); return kFALSE;}
142  Bool_t getNext(Int_t& e) {if(next(kInt )) return get(e); return kFALSE;}
143  Bool_t getNext(UInt_t& e) {if(next(kUInt )) return get(e); return kFALSE;}
144  Bool_t getNext(Long64_t& e) {if(next(kLong64 )) return get(e); return kFALSE;}
145  Bool_t getNext(ULong64_t& e) {if(next(kULong64)) return get(e); return kFALSE;}
146  Bool_t getNext(Float_t& e) {if(next(kFloat )) return get(e); return kFALSE;}
147  Bool_t getNext(Double_t& e) {if(next(kDouble )) return get(e); return kFALSE;}
148  Bool_t getNext(Bool_t& e) {if(next(kBool )) return get(e); return kFALSE;}
149 
150  // Next functions in this class are NOT for user!!!
151  UInt_t getWordLength(void) const {return wordLength;}
153  Bool_t tpOk(ESeqArrType tp) {if(type==tp) return kTRUE;
154  return err(tp);}
155  Bool_t addBlock(void);
156  UInt_t getArrSize(void) const {return size;}
157  void increaseArrSize(void) {size += wordLength;}
158 
159  ClassDef(HSeqArr,0)
160 };
161 
162 class HSeqArrIter : public TObject {
163  protected:
165  HSeqArrBlock* block; // pointer to the current HSeqArrBlock object
166  UInt_t index; // current index of element in full array (0-size)
167  Char_t* cElem; // pointer to the current element
168  Bool_t isFrst; // ???
169 
170  protected:
171  Bool_t next(ESeqArrType tp);
172  Bool_t nextAExp(ESeqArrType tp);
173  Bool_t setNotFirst(void) {isFrst=kFALSE; return kTRUE;}
174 
175  public:
176  HSeqArrIter(void) {} // NOT for user!!!
177  HSeqArrIter(HSeqArr* arr); // NOT for user!!!
178  ~HSeqArrIter(void) {}
179  void reset(void);
180 
181  Bool_t next(void);
182  Bool_t nextAndExpand(void);
183  Bool_t setCursor(Int_t indArr=-1);
184  UInt_t getCursor(void) const {return index/array->getWordLength();}
185 
186  Bool_t set(Char_t e) {*(Char_t* )cElem=e; return setNotFirst();} // Set element in cursor position
187  Bool_t set(UChar_t e) {*(UChar_t* )cElem=e; return setNotFirst();} // ...
188  Bool_t set(Short_t e) {*(Short_t* )cElem=e; return setNotFirst();} // ...
189  Bool_t set(UShort_t e) {*(UShort_t* )cElem=e; return setNotFirst();} // ...
190  Bool_t set(Int_t e) {*(Int_t* )cElem=e; return setNotFirst();} // ...
191  Bool_t set(UInt_t e) {*(UInt_t* )cElem=e; return setNotFirst();} // ...
192  Bool_t set(Long64_t e) {*(Long64_t* )cElem=e; return setNotFirst();} // ...
193  Bool_t set(ULong64_t e) {*(ULong64_t*)cElem=e; return setNotFirst();} // ...
194  Bool_t set(Float_t e) {*(Float_t* )cElem=e; return setNotFirst();} // ...
195  Bool_t set(Double_t e) {*(Double_t* )cElem=e; return setNotFirst();} // ...
196  Bool_t set(Bool_t e) {*(Bool_t* )cElem=e; return setNotFirst();} // ...
197 
198  Bool_t get(Char_t &e) {e=*(Char_t* )cElem; return setNotFirst();} // Get element from cursor position
199  Bool_t get(UChar_t &e) {e=*(UChar_t* )cElem; return setNotFirst();} // ...
200  Bool_t get(Short_t &e) {e=*(Short_t* )cElem; return setNotFirst();} // ...
201  Bool_t get(UShort_t &e) {e=*(UShort_t* )cElem; return setNotFirst();} // ...
202  Bool_t get(Int_t &e) {e=*(Int_t* )cElem; return setNotFirst();} // ...
203  Bool_t get(UInt_t &e) {e=*(UInt_t* )cElem; return setNotFirst();} // ...
204  Bool_t get(Long64_t &e) {e=*(Long64_t* )cElem; return setNotFirst();} // ...
205  Bool_t get(ULong64_t &e) {e=*(ULong64_t*)cElem; return setNotFirst();} // ...
206  Bool_t get(Float_t &e) {e=*(Float_t* )cElem; return setNotFirst();} // ...
207  Bool_t get(Double_t &e) {e=*(Double_t* )cElem; return setNotFirst();} // ...
208  Bool_t get(Bool_t &e) {e=*(Bool_t* )cElem; return setNotFirst();} // ...
209 
210  Bool_t get(Char_t **e) {*e=(Char_t* )cElem; return setNotFirst();} // Get element from cursor position
211  Bool_t get(UChar_t **e) {*e=(UChar_t* )cElem; return setNotFirst();} // ...
212  Bool_t get(Short_t **e) {*e=(Short_t* )cElem; return setNotFirst();} // ...
213  Bool_t get(UShort_t **e) {*e=(UShort_t* )cElem; return setNotFirst();} // ...
214  Bool_t get(Int_t **e) {*e=(Int_t* )cElem; return setNotFirst();} // ...
215  Bool_t get(UInt_t **e) {*e=(UInt_t* )cElem; return setNotFirst();} // ...
216  Bool_t get(Long64_t **e) {*e=(Long64_t* )cElem; return setNotFirst();} // ...
217  Bool_t get(ULong64_t **e) {*e=(ULong64_t*)cElem; return setNotFirst();} // ...
218  Bool_t get(Float_t **e) {*e=(Float_t* )cElem; return setNotFirst();} // ...
219  Bool_t get(Double_t **e) {*e=(Double_t* )cElem; return setNotFirst();} // ...
220  Bool_t get(Bool_t **e) {*e=(Bool_t* )cElem; return setNotFirst();} // ...
221 
222 
223  Bool_t setNext(Char_t e) {if(nextAExp(kChar )) return set(e); return kFALSE;}
224  Bool_t setNext(UChar_t e) {if(nextAExp(kUChar )) return set(e); return kFALSE;}
225  Bool_t setNext(Short_t e) {if(nextAExp(kShort )) return set(e); return kFALSE;}
226  Bool_t setNext(UShort_t e) {if(nextAExp(kUShort )) return set(e); return kFALSE;}
227  Bool_t setNext(Int_t e) {if(nextAExp(kInt )) return set(e); return kFALSE;}
228  Bool_t setNext(UInt_t e) {if(nextAExp(kUInt )) return set(e); return kFALSE;}
229  Bool_t setNext(Long64_t e) {if(nextAExp(kLong64 )) return set(e); return kFALSE;}
230  Bool_t setNext(ULong64_t e) {if(nextAExp(kULong64)) return set(e); return kFALSE;}
231  Bool_t setNext(Float_t e) {if(nextAExp(kFloat )) return set(e); return kFALSE;}
232  Bool_t setNext(Double_t e) {if(nextAExp(kDouble )) return set(e); return kFALSE;}
233  Bool_t setNext(Bool_t e) {if(nextAExp(kBool )) return set(e); return kFALSE;}
234 
235  Bool_t getNext(Char_t& e) {if(next(kChar )) return get(e); return kFALSE;}
236  Bool_t getNext(UChar_t& e) {if(next(kUChar )) return get(e); return kFALSE;}
237  Bool_t getNext(Short_t& e) {if(next(kShort )) return get(e); return kFALSE;}
238  Bool_t getNext(UShort_t& e) {if(next(kUShort )) return get(e); return kFALSE;}
239  Bool_t getNext(Int_t& e) {if(next(kInt )) return get(e); return kFALSE;}
240  Bool_t getNext(UInt_t& e) {if(next(kUInt )) return get(e); return kFALSE;}
241  Bool_t getNext(Long64_t& e) {if(next(kLong64 )) return get(e); return kFALSE;}
242  Bool_t getNext(ULong64_t& e) {if(next(kULong64)) return get(e); return kFALSE;}
243  Bool_t getNext(Float_t& e) {if(next(kFloat )) return get(e); return kFALSE;}
244  Bool_t getNext(Double_t& e) {if(next(kDouble )) return get(e); return kFALSE;}
245  Bool_t getNext(Bool_t& e) {if(next(kBool )) return get(e); return kFALSE;}
246 
247  Bool_t getNext(Char_t **e) {if(next(kChar )) return get(e); return kFALSE;}
248  Bool_t getNext(UChar_t **e) {if(next(kUChar )) return get(e); return kFALSE;}
249  Bool_t getNext(Short_t **e) {if(next(kShort )) return get(e); return kFALSE;}
250  Bool_t getNext(UShort_t **e) {if(next(kUShort )) return get(e); return kFALSE;}
251  Bool_t getNext(Int_t **e) {if(next(kInt )) return get(e); return kFALSE;}
252  Bool_t getNext(UInt_t **e) {if(next(kUInt )) return get(e); return kFALSE;}
253  Bool_t getNext(Long64_t **e) {if(next(kLong64 )) return get(e); return kFALSE;}
254  Bool_t getNext(ULong64_t **e) {if(next(kULong64)) return get(e); return kFALSE;}
255  Bool_t getNext(Float_t **e) {if(next(kFloat )) return get(e); return kFALSE;}
256  Bool_t getNext(Double_t **e) {if(next(kDouble )) return get(e); return kFALSE;}
257  Bool_t getNext(Bool_t **e) {if(next(kBool )) return get(e); return kFALSE;}
258 
259  ClassDef(HSeqArrIter,0)
260 };
261 
262 #endif /*!HSEQARRI_H*/
Bool_t getNext(UInt_t **e)
Definition: hseqarr.h:252
void setElement(ULong64_t e)
Definition: hseqarr.h:109
void setElement(Short_t e)
Definition: hseqarr.h:104
Bool_t set(Float_t e)
Definition: hseqarr.h:194
HSeqArrBlock * block
Definition: hseqarr.h:165
Bool_t set(Float_t &e)
Definition: hseqarr.h:69
void reset(void)
Definition: hseqarr.cc:221
UInt_t getMemSize(void) const
Definition: hseqarr.cc:121
Bool_t set(Double_t e)
Definition: hseqarr.h:195
Bool_t getNext(Short_t &e)
Definition: hseqarr.h:237
void getElement(Int_t &e)
Definition: hseqarr.h:118
Bool_t setCursor(Int_t indArr=-1)
Definition: hseqarr.cc:191
void getElement(UShort_t &e)
Definition: hseqarr.h:117
Bool_t addBlock(void)
Definition: hseqarr.cc:163
UInt_t getArrSize(void) const
Definition: hseqarr.h:156
Bool_t set(Bool_t e)
Definition: hseqarr.h:196
Bool_t set(Double_t &e)
Definition: hseqarr.h:70
Bool_t set(UShort_t &e)
Definition: hseqarr.h:64
static UInt_t blockIndex(UInt_t n)
Definition: hseqarr.h:20
UInt_t getArraySize(void) const
Definition: hseqarr.h:92
Definition: hseqarr.h:35
UInt_t size
Definition: hseqarr.h:44
Bool_t getNext(Int_t &e)
Definition: hseqarr.h:239
UInt_t blockLength
Definition: hseqarr.h:46
void getElement(UChar_t &e)
Definition: hseqarr.h:115
Bool_t getNext(UInt_t &e)
Definition: hseqarr.h:143
void setElement(Double_t e)
Definition: hseqarr.h:111
UInt_t getWordLength(void) const
Definition: hseqarr.h:151
Bool_t setNext(Double_t e)
Definition: hseqarr.h:232
void getElement(Char_t &e)
Definition: hseqarr.h:114
UInt_t nBlocks
Definition: hseqarr.h:45
HSeqArrBlock * getFirstBlock(void)
Definition: hseqarr.h:152
Bool_t setNext(Char_t e)
Definition: hseqarr.h:223
Bool_t getNext(Char_t **e)
Definition: hseqarr.h:247
Bool_t getNext(Bool_t &e)
Definition: hseqarr.h:148
Bool_t getNext(ULong64_t **e)
Definition: hseqarr.h:254
HSeqArrBlock(void)
Bool_t addNext(Int_t e)
Definition: hseqarr.h:130
Bool_t getNext(UShort_t **e)
Definition: hseqarr.h:250
Bool_t setNext(UInt_t e)
Definition: hseqarr.h:228
void setElement(Float_t e)
Definition: hseqarr.h:110
void setElement(Bool_t e)
Definition: hseqarr.h:112
Bool_t getNext(Float_t &e)
Definition: hseqarr.h:146
Bool_t getNext(UShort_t &e)
Definition: hseqarr.h:238
Bool_t getNext(Int_t &e)
Definition: hseqarr.h:142
Bool_t nextAExp(ESeqArrType tp)
Definition: hseqarr.cc:264
Bool_t getNext(Float_t &e)
Definition: hseqarr.h:243
Bool_t getNext(Bool_t &e)
Definition: hseqarr.h:245
UInt_t getBlockNumber(void)
Definition: hseqarr.h:23
Bool_t addNext(Char_t e)
Definition: hseqarr.h:126
Bool_t getNext(Short_t &e)
Definition: hseqarr.h:140
HSeqArrIter(void)
Definition: hseqarr.h:176
HSeqArrBlock * firstBlock
Definition: hseqarr.h:40
Bool_t getNext(Bool_t **e)
Definition: hseqarr.h:257
Int_t n
Bool_t setNext(Bool_t e)
Definition: hseqarr.h:233
Bool_t getNext(UInt_t &e)
Definition: hseqarr.h:240
Bool_t getNext(Float_t **e)
Definition: hseqarr.h:255
HSeqArr(Char_t)
Definition: hseqarr.h:88
void getElement(ULong64_t &e)
Definition: hseqarr.h:121
Bool_t setArrType(ESeqArrType tp)
Definition: hseqarr.cc:100
Bool_t getNext(UChar_t &e)
Definition: hseqarr.h:139
Bool_t next(ESeqArrType tp)
Definition: hseqarr.cc:133
ESeqArrType
Definition: hseqarr.h:32
Bool_t set(Int_t e)
Definition: hseqarr.h:190
Bool_t getNext(UShort_t &e)
Definition: hseqarr.h:141
void setElement(Long64_t e)
Definition: hseqarr.h:108
Bool_t setCurrBlock(UInt_t n)
Definition: hseqarr.cc:170
Bool_t setNext(Long64_t e)
Definition: hseqarr.h:229
Bool_t set(Short_t e)
Definition: hseqarr.h:188
Bool_t set(UInt_t &e)
Definition: hseqarr.h:66
void setElement(UShort_t e)
Definition: hseqarr.h:105
Bool_t setNext(Int_t e)
Definition: hseqarr.h:227
Bool_t addNext(Bool_t e)
Definition: hseqarr.h:136
Bool_t addNext(Float_t e)
Definition: hseqarr.h:134
Bool_t getNext(ULong64_t &e)
Definition: hseqarr.h:242
void getElement(Long64_t &e)
Definition: hseqarr.h:120
Char_t * cElem
Definition: hseqarr.h:167
Bool_t getNext(Long64_t **e)
Definition: hseqarr.h:253
Bool_t setNotFirst(void)
Definition: hseqarr.h:173
Bool_t set(Long64_t e)
Definition: hseqarr.h:192
Definition: hseqarr.h:33
HSeqArr(void)
Definition: hseqarr.h:86
Bool_t addNext(Double_t e)
Definition: hseqarr.h:135
Char_t * getArr(void)
Definition: hseqarr.h:22
void getElement(Double_t &e)
Definition: hseqarr.h:123
Bool_t getNext(Char_t &e)
Definition: hseqarr.h:138
Bool_t setCursor(Int_t indArr=-1)
Definition: hseqarr.cc:269
Bool_t addNext(Long64_t e)
Definition: hseqarr.h:132
Bool_t err(ESeqArrType tp)
Definition: hseqarr.cc:206
Bool_t set(Char_t &e)
Definition: hseqarr.h:61
Bool_t getNext(Double_t **e)
Definition: hseqarr.h:256
Definition: hseqarr.h:33
Bool_t set(UInt_t e)
Definition: hseqarr.h:191
Bool_t expand(void)
Definition: hseqarr.cc:68
HSeqArr(ESeqArrType tp)
Definition: hseqarr.h:87
Bool_t getNext(Double_t &e)
Definition: hseqarr.h:147
Bool_t getNext(Long64_t &e)
Definition: hseqarr.h:144
Bool_t tpOk(ESeqArrType tp)
Definition: hseqarr.h:153
~HSeqArrIter(void)
Definition: hseqarr.h:178
Bool_t addNext(ULong64_t e)
Definition: hseqarr.h:133
Bool_t set(ULong64_t &e)
Definition: hseqarr.h:68
void getElement(Short_t &e)
Definition: hseqarr.h:116
Bool_t addNext(UShort_t e)
Definition: hseqarr.h:129
Bool_t getNext(ULong64_t &e)
Definition: hseqarr.h:145
Bool_t setNext(Float_t e)
Definition: hseqarr.h:231
Bool_t set(UChar_t &e)
Definition: hseqarr.h:62
void setElement(UChar_t e)
Definition: hseqarr.h:103
Bool_t setNext(ULong64_t e)
Definition: hseqarr.h:230
Bool_t getNext(Double_t &e)
Definition: hseqarr.h:244
Definition: hseqarr.h:33
void setElement(UInt_t e)
Definition: hseqarr.h:107
HSeqArrBlock * getNextBlock(void)
Definition: hseqarr.h:24
void getElement(Float_t &e)
Definition: hseqarr.h:122
~HSeqArr(void)
Definition: hseqarr.cc:93
HSeqArrBlock * lastBlock
Definition: hseqarr.h:41
UInt_t index
Definition: hseqarr.h:49
Bool_t getNext(UChar_t **e)
Definition: hseqarr.h:248
Bool_t addElement(void)
Definition: hseqarr.cc:182
static UInt_t indexInBlock(UInt_t i)
Definition: hseqarr.h:21
UInt_t blockNumber
Definition: hseqarr.h:12
Bool_t set(Int_t &e)
Definition: hseqarr.h:65
Char_t * cElem
Definition: hseqarr.h:50
void increaseArrSize(void)
Definition: hseqarr.h:157
void getElement(UInt_t &e)
Definition: hseqarr.h:119
Bool_t isFrst
Definition: hseqarr.h:168
Bool_t getNext(Int_t **e)
Definition: hseqarr.h:251
Bool_t set(Long64_t &e)
Definition: hseqarr.h:67
Bool_t isFrst
Definition: hseqarr.h:51
void init(ESeqArrType tp)
Definition: hseqarr.cc:78
void rewind(void)
Definition: hseqarr.cc:126
Definition: hseqarr.h:33
UInt_t wordLength
Definition: hseqarr.h:42
void setElement(Char_t e)
Definition: hseqarr.h:102
void getElement(Bool_t &e)
Definition: hseqarr.h:124
Bool_t next(void)
Definition: hseqarr.cc:234
Bool_t nextAndExpand(void)
Definition: hseqarr.cc:248
Bool_t isBoundOk(UInt_t i) const
Definition: hseqarr.h:95
Bool_t setNext(Short_t e)
Definition: hseqarr.h:225
Definition: hseqarr.h:34
ESeqArrType type
Definition: hseqarr.h:39
Bool_t getNext(Long64_t &e)
Definition: hseqarr.h:241
Bool_t addNext(UInt_t e)
Definition: hseqarr.h:131
UInt_t index
Definition: hseqarr.h:166
void setElement(Int_t e)
Definition: hseqarr.h:106
Bool_t nextAExp(ESeqArrType tp)
Definition: hseqarr.cc:148
Bool_t getNext(Char_t &e)
Definition: hseqarr.h:235
UInt_t getCursor(void) const
Definition: hseqarr.h:184
Definition: hseqarr.h:33
Bool_t setNotFirst(void)
Definition: hseqarr.h:57
HSeqArr * array
Definition: hseqarr.h:164
Bool_t set(UChar_t e)
Definition: hseqarr.h:187
Bool_t getNext(Short_t **e)
Definition: hseqarr.h:249
Bool_t addNext(UChar_t e)
Definition: hseqarr.h:127
HSeqArrIter * makeIterator(void)
Definition: hseqarr.cc:212
HSeqArrBlock * block
Definition: hseqarr.h:48
Bool_t getNext(UChar_t &e)
Definition: hseqarr.h:236
Bool_t setNext(UShort_t e)
Definition: hseqarr.h:226
Bool_t set(Bool_t &e)
Definition: hseqarr.h:71
Bool_t set(Short_t &e)
Definition: hseqarr.h:63
Bool_t set(UShort_t e)
Definition: hseqarr.h:189
Bool_t setNext(UChar_t e)
Definition: hseqarr.h:224
Bool_t set(Char_t e)
Definition: hseqarr.h:186
Bool_t addNext(Short_t e)
Definition: hseqarr.h:128
virtual ~HSeqArrBlock(void)
Definition: hseqarr.cc:61
Bool_t set(ULong64_t e)
Definition: hseqarr.h:193
Char_t arr[blockSize]
Definition: hseqarr.h:11
HSeqArrBlock * nextBlock
Definition: hseqarr.h:13