12#ifndef ROOT_TRootSnifferFull
13#define ROOT_TRootSnifferFull
37 Bool_t ProduceBinary(
const std::string &path,
const std::string &options, std::string &res)
override;
39 Bool_t ProduceRootFile(
const std::string &path,
const std::string &options, std::string &res)
override;
41 Bool_t ProduceImage(
Int_t kind,
const std::string &path,
const std::string &options, std::string &res)
override;
43 Bool_t ProduceXml(
const std::string &path,
const std::string &options, std::string &res)
override;
45 Bool_t ProduceExe(
const std::string &path,
const std::string &options,
Int_t reskind, std::string &res)
override;
47 Bool_t CallProduceImage(
const std::string &kind,
const std::string &path,
const std::string &options, std::string &res)
override;
#define ClassDefOverride(name, id)
TClass instances represent classes, structs and namespaces in the ROOT type system.
All ROOT classes may have RTTI (run time type identification) support added.
Book space in a file, create I/O buffers, to fill them, (un)compress them.
A TMemFile is like a normal TFile except that it reads and writes only from memory.
Mother of all ROOT objects.
Extends TRootSniffer for many ROOT classes.
void * FindInHierarchy(const char *path, TClass **cl=nullptr, TDataMember **member=nullptr, Int_t *chld=nullptr) override
Search element with specified path.
Bool_t IsStreamerInfoItem(const char *itemname) override
Return true if it is streamer info item name.
static Bool_t IsDrawableClass(TClass *cl)
return true if given class can be drawn in JSROOT
Bool_t ProduceExe(const std::string &path, const std::string &options, Int_t reskind, std::string &res) override
Execute command for specified object.
TList * fSinfo
! last produced streamer info
Bool_t CanDrawClass(TClass *cl) override
void ScanObjectProperties(TRootSnifferScanRec &rec, TObject *obj) override
Scans object properties.
virtual ~TRootSnifferFull()
destructor
void ScanObjectChilds(TRootSnifferScanRec &rec, TObject *obj) override
Scans object childs (if any)
Bool_t ProduceRootFile(const std::string &path, const std::string &options, std::string &res) override
Produce ROOT file for specified item.
ULong_t GetItemHash(const char *itemname) override
Get hash function for specified item.
Bool_t ProduceImage(Int_t kind, const std::string &path, const std::string &options, std::string &res) override
Method to produce image from specified object.
Bool_t HasStreamerInfo() const override
Bool_t CallProduceImage(const std::string &kind, const std::string &path, const std::string &options, std::string &res) override
Invokes TRootSniffer::ProduceIamge, converting kind into TImage::EImageFileTypes type.
Bool_t ProduceXml(const std::string &path, const std::string &options, std::string &res) override
Produce XML data for specified item.
void CreateMemFile()
Creates TMemFile instance, which used for objects streaming.
Bool_t ProduceBinary(const std::string &path, const std::string &options, std::string &res) override
Produce binary data for specified item.
TMemFile * fMemFile
! file used to manage streamer infos
ULong_t GetStreamerInfoHash() override
Returns hash value for streamer infos.
void ScanKeyProperties(TRootSnifferScanRec &rec, TKey *key, TObject *&obj, TClass *&obj_class) override
Scans TKey properties.
Structure used to scan hierarchies of ROOT objects.
Sniffer of ROOT objects, data provider for THttpServer.