Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
TArrayIndexProducer Class Reference

JSON array separators for multi-dimensional JSON arrays It fully reproduces array dimensions as in original ROOT classes Contrary to binary I/O, which always writes flat arrays.

Definition at line 142 of file TBufferJSON.cxx.

Public Member Functions

 TArrayIndexProducer (TDataMember *member, Int_t extradim, const char *separ)
 
 TArrayIndexProducer (TStreamerElement *elem, Int_t arraylen, const char *separ)
 
nlohmann::json * ExtractNode (nlohmann::json *topnode, bool next=true)
 
const char * GetBegin ()
 
const char * GetEnd ()
 
TArrayIGetIndices ()
 return array with current index
 
Bool_t IsArray () const
 
Bool_t IsDone () const
 
const char * NextSeparator ()
 increment indexes and returns intermediate or last separator
 
Int_t NumDimensions () const
 returns number of array dimensions
 
Int_t ReduceDimension ()
 
Int_t TotalLength () const
 returns total number of elements in array
 

Protected Attributes

Int_t fCnt {-1}
 
TArrayI fIndicies
 
Bool_t fIsArray {kFALSE}
 
TArrayI fMaxIndex
 
TString fRes
 
const char * fSepar {nullptr}
 
Int_t fTotalLen {0}
 

Constructor & Destructor Documentation

◆ TArrayIndexProducer() [1/2]

TArrayIndexProducer::TArrayIndexProducer ( TStreamerElement elem,
Int_t  arraylen,
const char *  separ 
)
inline

Definition at line 153 of file TBufferJSON.cxx.

◆ TArrayIndexProducer() [2/2]

TArrayIndexProducer::TArrayIndexProducer ( TDataMember member,
Int_t  extradim,
const char *  separ 
)
inline

Definition at line 189 of file TBufferJSON.cxx.

Member Function Documentation

◆ ExtractNode()

nlohmann::json * TArrayIndexProducer::ExtractNode ( nlohmann::json *  topnode,
bool  next = true 
)
inline

Definition at line 289 of file TBufferJSON.cxx.

◆ GetBegin()

const char * TArrayIndexProducer::GetBegin ( )
inline

Definition at line 245 of file TBufferJSON.cxx.

◆ GetEnd()

const char * TArrayIndexProducer::GetEnd ( )
inline

Definition at line 255 of file TBufferJSON.cxx.

◆ GetIndices()

TArrayI & TArrayIndexProducer::GetIndices ( )
inline

return array with current index

Definition at line 217 of file TBufferJSON.cxx.

◆ IsArray()

Bool_t TArrayIndexProducer::IsArray ( ) const
inline

Definition at line 237 of file TBufferJSON.cxx.

◆ IsDone()

Bool_t TArrayIndexProducer::IsDone ( ) const
inline

Definition at line 239 of file TBufferJSON.cxx.

◆ NextSeparator()

const char * TArrayIndexProducer::NextSeparator ( )
inline

increment indexes and returns intermediate or last separator

Definition at line 265 of file TBufferJSON.cxx.

◆ NumDimensions()

Int_t TArrayIndexProducer::NumDimensions ( ) const
inline

returns number of array dimensions

Definition at line 214 of file TBufferJSON.cxx.

◆ ReduceDimension()

Int_t TArrayIndexProducer::ReduceDimension ( )
inline

Definition at line 222 of file TBufferJSON.cxx.

◆ TotalLength()

Int_t TArrayIndexProducer::TotalLength ( ) const
inline

returns total number of elements in array

Definition at line 220 of file TBufferJSON.cxx.

Member Data Documentation

◆ fCnt

Int_t TArrayIndexProducer::fCnt {-1}
protected

Definition at line 145 of file TBufferJSON.cxx.

◆ fIndicies

TArrayI TArrayIndexProducer::fIndicies
protected

Definition at line 147 of file TBufferJSON.cxx.

◆ fIsArray

Bool_t TArrayIndexProducer::fIsArray {kFALSE}
protected

Definition at line 150 of file TBufferJSON.cxx.

◆ fMaxIndex

TArrayI TArrayIndexProducer::fMaxIndex
protected

Definition at line 148 of file TBufferJSON.cxx.

◆ fRes

TString TArrayIndexProducer::fRes
protected

Definition at line 149 of file TBufferJSON.cxx.

◆ fSepar

const char* TArrayIndexProducer::fSepar {nullptr}
protected

Definition at line 146 of file TBufferJSON.cxx.

◆ fTotalLen

Int_t TArrayIndexProducer::fTotalLen {0}
protected

Definition at line 144 of file TBufferJSON.cxx.

  • io/io/src/TBufferJSON.cxx