Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
root
RootBranch.h
Go to the documentation of this file.
1
/* -*- c++ -*- */
2
14
#ifndef RootBranch_H
15
#define RootBranch_H
16
17
#include "
RootDataType.h
"
18
19
#include "
pattern/libhippo.h
"
20
21
#include "TLeaf.h"
22
#include "TObjArray.h"
23
24
#include <string>
25
#include <vector>
26
#include <boost/tokenizer.hpp>
27
#include <boost/lexical_cast.hpp>
28
29
class
TBranch
;
30
31
namespace
hippodraw {
32
40
class
MDL_HIPPOPLOT_API
RootBranch
41
{
42
43
private
:
44
47
mutable
TBranch
*
m_branch
;
48
51
TLeaf
*
m_leaf
;
52
56
hippodraw::RootData::Type
m_leaf_type
;
57
60
int
m_number_leaves
;
61
65
int
m_number_elements
;
66
71
mutable
Double_t
m_double_data
;
72
77
mutable
Float_t
m_float_data
;
78
83
mutable
Int_t
m_int_data
;
84
89
mutable
UInt_t
m_uint_data
;
94
mutable
Short_t
m_short_data
;
95
100
mutable
UShort_t
m_ushort_data
;
101
106
mutable
Long64_t
m_long64_data
;
107
112
mutable
ULong64_t
m_ulong64_data
;
113
121
mutable
Double_t *
m_vector_double_data
;
122
128
mutable
Float_t *
m_vector_float_data
;
129
135
mutable
Int_t *
m_vector_int_data
;
136
142
mutable
UInt_t *
m_vector_uint_data
;
143
144
150
mutable
Short_t *
m_vector_short_data
;
151
157
mutable
UShort_t *
m_vector_ushort_data
;
158
164
mutable
Long64_t *
m_vector_long64_data
;
165
171
mutable
ULong64_t *
m_vector_ulong64_data
;
172
176
std::vector < int >
m_shape
;
177
182
int
m_releventIndex
;
183
186
mutable
bool
m_branch_set
;
187
194
bool
m_useable
;
195
196
public
:
197
200
RootBranch
(
TBranch
* );
201
202
private
:
203
206
RootBranch
(
const
RootBranch
& );
207
210
RootBranch
();
211
212
public
:
213
216
~
RootBranch
();
217
218
220
bool
isMultiDimensional()
const
;
221
225
int
numberOfElements()
const
;
226
229
unsigned
int
size
()
const
;
230
233
bool
empty ()
const
;
234
237
double
valueAt (
unsigned
int
row )
const
;
238
241
hippodraw::RootData::Type
getType ()
const
;
242
250
double
* doubleArrayAt (
unsigned
int
row );
251
254
float
* floatArrayAt (
unsigned
int
row );
255
258
int
* intArrayAt (
unsigned
int
row );
259
262
unsigned
int
* uintArrayAt (
unsigned
int
row );
263
264
bool
isFilled ( )
const
;
265
272
unsigned
int
getRank ()
const
;
273
277
void
setReleventIndex(
const
std::vector< unsigned int >& index );
278
282
const
std::vector < int > & getShape ();
283
285
TBranch
* getTBranch();
286
289
bool
isUseable ()
const
;
290
291
private
:
292
295
void
setBranchAddress ()
const
;
296
301
void
initShape (
const
char
* title );
302
303
};
304
305
}
// namespace hippodraw
306
307
#endif // RootBranch_H
Generated for HippoDraw Class Library by