A++ » INCLUDE » TNDArrayRef<unsigned short>

class TNDArrayRef<unsigned short>


TNDArray

N-Dim array class.

Storage layout:
Assume 3 dimensions, array sizes 2, 4 and 3 i.e. 24 bins:
Data is stored as [0,0,0], [0,0,1], [0,0,2], [0,1,0],...

fSizes stores the combined size of each bin in a dimension, i.e. in
above example it would contain 24, 12, 3, 1.

Storage is allocated lazily, only when data is written to the array.

TNDArrayRef gives access to a sub-dimension, e.g. arr[0][1] in above
three-dimensional example, up to an element with conversion operator
to double: double value = arr[0][1][2];


Function Members (Methods)

public:
~TNDArrayRef<unsigned short>()
static TClass*Class()
TClass*IsA() const
unsigned shortoperator unsigned short() const
TNDArrayRef<unsigned short>&operator=(const TNDArrayRef<unsigned short>&)
TNDArrayRef<unsigned short>&operator=(TNDArrayRef<unsigned short>&&)
TNDArrayRef<unsigned short>operator[](Int_t idx) const
voidShowMembers(TMemberInspector& insp) const
voidStreamer(TBuffer&)
voidStreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b)
TNDArrayRef<unsigned short>(const TNDArrayRef<unsigned short>&)
TNDArrayRef<unsigned short>(TNDArrayRef<unsigned short>&&)
TNDArrayRef<unsigned short>(const unsigned short* data, const Long64_t* sizes)

Data Members

private:
const unsigned short*fDatapointer into TNDArray's fData
const Long64_t*fSizespointer into TNDArray's fSizes

Class Charts

Inheritance Chart:
TNDArrayRef<unsigned short>

Function documentation

TNDArray& operator=(const TNDArray&)
TNDArrayRef<T> operator[](Int_t idx) const
template<> void TNDArrayT<double> Streamer(TBuffer& )
 When building with -fmodules, it instantiates all pending instantiations,
 instead of delaying them until the end of the translation unit.
 We 'got away with' probably because the use and the definition of the
 explicit specialization do not occur in the same TU.

 In case we are building with -fmodules, we need to forward declare the
 specialization in order to compile the dictionary G__Hist.cxx.