TRootSnifferScanRec Structure used to scan hierarchies of ROOT objects Represents single level of hierarchy
virtual | ~TRootSnifferScanRec() |
void | BeforeNextChild() |
Bool_t | CanExpandItem() |
Bool_t | CanSetFields() |
static TClass* | Class() |
void | CloseNode() |
void | CreateNode(const char* _node_name) |
Int_t | Depth() const |
Bool_t | Done() const |
Int_t | ExtraFolderLevel() |
Bool_t | GoInside(TRootSnifferScanRec& super, TObject* obj, const char* obj_name = 0) |
virtual TClass* | IsA() const |
Bool_t | IsReadyForResult() const |
void | MakeItemName(const char* objname, TString& itemname) |
TRootSnifferScanRec& | operator=(const TRootSnifferScanRec&) |
void | SetField(const char* name, const char* value, Bool_t with_quotes = kTRUE) |
Bool_t | SetResult(void* obj, TClass* cl, TDataMember* member = 0, Int_t chlds = -1) |
void | SetRootClass(TClass* cl) |
virtual void | ShowMembers(TMemberInspector& insp) const |
virtual void | Streamer(TBuffer&) |
void | StreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b) |
TRootSnifferScanRec() | |
TRootSnifferScanRec(const TRootSnifferScanRec&) |
TList | fItemsNames | ! list of created items names, need to avoid duplication |
Bool_t | has_more | ! indicates that potentially there are more items can be found |
Int_t | lvl | ! current level of hierarchy |
UInt_t | mask | ! defines operation kind |
Int_t | num_childs | ! number of childs |
Int_t | num_fields | ! number of fields |
TRootSnifferScanRec* | parent | ! pointer on parent record |
const char* | searchpath | ! current path searched |
TString | started_node | ! name of node stared |
TRootSnifferStore* | store | ! object to store results |
Inheritance Chart: | |||||
|
record field for current element
constructs item name from object name if special symbols like '/', '#', ':', '&', '?' are used in object name they will be replaced with '_'. To avoid item name duplication, additional id number can be appended
creates new node with specified name if special symbols like "[]&<>" are used, node name will be replaced by default name like "extra_item_N" and original node name will be recorded as "_original_name" field Optionally, object name can be recorded as "_realname" field
set root class name as node kind in addition, path to master item (streamer info) specified Such master item required to correctly unstream data on JavaScript
Checks if result will be accepted. Used to verify if sniffer should read object from the file
set results of scanning
return level depth till folder, marked with extra flag Objects in such folder can be 'expanded' - one can get access to all class members If no extra folder found, -1 is returned
returns true if current item can be expanded - means one could explore objects members
Method verifies if new level of hierarchy should be started with provided object. If required, all necessary nodes and fields will be created Used when different collection kinds should be scanned