library: libSQL #include "TBufferSQL2.h" |
TBufferSQL2
class description - header file - source file
viewCVS header - viewCVS source
class TBufferSQL2: public TBuffer
Function Members (Methods)
Display options:
public:
| TBufferSQL2(TBuffer::EMode mode) |
| TBufferSQL2(TBuffer::EMode mode, TSQLFile* file) |
virtual | ~TBufferSQL2() |
void | TObject::AbstractMethod(const char* method) const |
virtual void | TObject::AppendPad(Option_t* option = "") |
virtual void | TObject::Browse(TBrowser* b) |
char* | TBuffer::Buffer() const |
Int_t | TBuffer::BufferSize() const |
virtual Int_t | CheckByteCount(UInt_t startpos, UInt_t bcnt, const TClass* clss) |
virtual Int_t | CheckByteCount(UInt_t startpos, UInt_t bcnt, const char* classname) |
Bool_t | TBuffer::CheckObject(const TObject* obj) |
Bool_t | TBuffer::CheckObject(const void* obj, const TClass* ptrClass) |
static TClass* | Class() |
virtual void | ClassBegin(const TClass*, Version_t = -1) |
virtual void | ClassEnd(const TClass*) |
virtual void | ClassMember(const char* name, const char* typeName = "0", Int_t arrsize1 = -1, Int_t arrsize2 = -1) |
virtual const char* | TObject::ClassName() const |
virtual void | TObject::Clear(Option_t* = "") |
virtual TObject* | TObject::Clone(const char* newname = "") const |
virtual Int_t | TObject::Compare(const TObject* obj) const |
virtual void | TObject::Copy(TObject& object) const |
virtual void | DecrementLevel(TStreamerInfo*) |
virtual void | TObject::Delete(Option_t* option = "") |
void | TBuffer::DetachBuffer() |
virtual Int_t | TObject::DistancetoPrimitive(Int_t px, Int_t py) |
virtual void | TObject::Draw(Option_t* option = "") |
virtual void | TObject::DrawClass() const |
virtual TObject* | TObject::DrawClone(Option_t* option = "") const |
virtual void | TObject::Dump() const |
virtual void | TObject::Error(const char* method, const char* msgfmt) const |
virtual void | TObject::Execute(const char* method, const char* params, Int_t* error = 0) |
virtual void | TObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0) |
virtual void | TObject::ExecuteEvent(Int_t event, Int_t px, Int_t py) |
virtual void | TObject::Fatal(const char* method, const char* msgfmt) const |
virtual TObject* | TObject::FindObject(const char* name) const |
virtual TObject* | TObject::FindObject(const TObject* obj) const |
Int_t | TBuffer::GetBufferDisplacement() const |
Int_t | TBuffer::GetBufferVersion() const |
static TClass* | TBuffer::GetClass(const type_info& typeinfo) |
static TClass* | TBuffer::GetClass(const char* className) |
virtual Option_t* | TObject::GetDrawOption() const |
static Long_t | TObject::GetDtorOnly() |
Int_t | GetErrorFlag() const |
static Int_t | TBuffer::GetGlobalReadParam() |
static Int_t | TBuffer::GetGlobalWriteParam() |
virtual const char* | TObject::GetIconName() const |
TStreamerInfo* | TBuffer::GetInfo() |
Int_t | TBuffer::GetMapCount() const |
void | TBuffer::GetMappedObject(UInt_t tag, void*& ptr, TClass*& ClassPtr) const |
virtual const char* | TObject::GetName() const |
virtual char* | TObject::GetObjectInfo(Int_t px, Int_t py) const |
static Bool_t | TObject::GetObjectStat() |
virtual Option_t* | TObject::GetOption() const |
TObject* | TBuffer::GetParent() const |
UShort_t | TBuffer::GetPidOffset() const |
TSQLStructure* | GetStructure() const |
virtual const char* | TObject::GetTitle() const |
virtual UInt_t | TObject::GetUniqueID() const |
virtual Bool_t | TObject::HandleTimer(TTimer* timer) |
virtual ULong_t | TObject::Hash() const |
virtual void | IncrementLevel(TStreamerInfo*) |
virtual void | TObject::Info(const char* method, const char* msgfmt) const |
virtual Bool_t | TObject::InheritsFrom(const char* classname) const |
virtual Bool_t | TObject::InheritsFrom(const TClass* cl) const |
void | TBuffer::InitMap() |
virtual void | TObject::Inspect() const |
void | TObject::InvertBit(UInt_t f) |
virtual TClass* | IsA() const |
virtual Bool_t | TObject::IsEqual(const TObject* obj) const |
virtual Bool_t | TObject::IsFolder() const |
Bool_t | TObject::IsOnHeap() const |
Bool_t | TBuffer::IsReading() const |
virtual Bool_t | TObject::IsSortable() const |
Bool_t | TBuffer::IsWriting() const |
Bool_t | TObject::IsZombie() const |
Int_t | TBuffer::Length() const |
virtual void | TObject::ls(Option_t* option = "") const |
void | TBuffer::MapObject(const TObject* obj, UInt_t offset = 1) |
void | TBuffer::MapObject(const void* obj, const TClass* cl, UInt_t offset = 1) |
void | TObject::MayNotUse(const char* method) const |
virtual Bool_t | TObject::Notify() |
static void | TObject::operator delete(void* ptr) |
static void | TObject::operator delete(void* ptr, void* vp) |
static void | TObject::operator delete[](void* ptr) |
static void | TObject::operator delete[](void* ptr, void* vp) |
void* | TObject::operator new(size_t sz) |
void* | TObject::operator new(size_t sz, void* vp) |
void* | TObject::operator new[](size_t sz) |
void* | TObject::operator new[](size_t sz, void* vp) |
virtual TBuffer& | operator<<(Bool_t b) |
virtual TBuffer& | operator<<(Char_t c) |
virtual TBuffer& | operator<<(UChar_t c) |
virtual TBuffer& | operator<<(Short_t h) |
virtual TBuffer& | operator<<(UShort_t h) |
virtual TBuffer& | operator<<(Int_t i) |
virtual TBuffer& | operator<<(UInt_t i) |
virtual TBuffer& | operator<<(Long_t l) |
virtual TBuffer& | operator<<(ULong_t l) |
virtual TBuffer& | operator<<(Long64_t l) |
virtual TBuffer& | operator<<(ULong64_t l) |
virtual TBuffer& | operator<<(Float_t f) |
virtual TBuffer& | operator<<(Double_t d) |
virtual TBuffer& | operator<<(const Char_t* c) |
virtual TBuffer& | operator>>(Bool_t& b) |
virtual TBuffer& | operator>>(Char_t& c) |
virtual TBuffer& | operator>>(UChar_t& c) |
virtual TBuffer& | operator>>(Short_t& h) |
virtual TBuffer& | operator>>(UShort_t& h) |
virtual TBuffer& | operator>>(Int_t& i) |
virtual TBuffer& | operator>>(UInt_t& i) |
virtual TBuffer& | operator>>(Long_t& l) |
virtual TBuffer& | operator>>(ULong_t& l) |
virtual TBuffer& | operator>>(Long64_t& l) |
virtual TBuffer& | operator>>(ULong64_t& l) |
virtual TBuffer& | operator>>(Float_t& f) |
virtual TBuffer& | operator>>(Double_t& d) |
virtual TBuffer& | operator>>(Char_t* c) |
virtual void | TObject::Paint(Option_t* option = "") |
virtual void | TObject::Pop() |
virtual void | TObject::Print(Option_t* option = "") const |
virtual Int_t | ReadArray(Bool_t*& b) |
virtual Int_t | ReadArray(Char_t*& c) |
virtual Int_t | ReadArray(UChar_t*& c) |
virtual Int_t | ReadArray(Short_t*& h) |
virtual Int_t | ReadArray(UShort_t*& h) |
virtual Int_t | ReadArray(Int_t*& i) |
virtual Int_t | ReadArray(UInt_t*& i) |
virtual Int_t | ReadArray(Long_t*& l) |
virtual Int_t | ReadArray(ULong_t*& l) |
virtual Int_t | ReadArray(Long64_t*& l) |
virtual Int_t | ReadArray(ULong64_t*& l) |
virtual Int_t | ReadArray(Float_t*& f) |
virtual Int_t | ReadArray(Double_t*& d) |
virtual Int_t | ReadArrayDouble32(Double_t*& d, TStreamerElement* ele = 0) |
Int_t | TBuffer::ReadBuf(void* buf, Int_t max) |
virtual TClass* | ReadClass(const TClass* cl = 0, UInt_t* objTag = 0) |
virtual void | ReadDouble32(Double_t* d, TStreamerElement* ele = 0) |
virtual void | ReadFastArray(Bool_t* b, Int_t n) |
virtual void | ReadFastArray(Char_t* c, Int_t n) |
virtual void | ReadFastArray(UChar_t* c, Int_t n) |
virtual void | ReadFastArray(Short_t* h, Int_t n) |
virtual void | ReadFastArray(UShort_t* h, Int_t n) |
virtual void | ReadFastArray(Int_t* i, Int_t n) |
virtual void | ReadFastArray(UInt_t* i, Int_t n) |
virtual void | ReadFastArray(Long_t* l, Int_t n) |
virtual void | ReadFastArray(ULong_t* l, Int_t n) |
virtual void | ReadFastArray(Long64_t* l, Int_t n) |
virtual void | ReadFastArray(ULong64_t* l, Int_t n) |
virtual void | ReadFastArray(Float_t* f, Int_t n) |
virtual void | ReadFastArray(Double_t* d, Int_t n) |
virtual void | ReadFastArray(void* start, const TClass* cl, Int_t n = 1, TMemberStreamer* s = 0) |
virtual void | ReadFastArray(void** startp, const TClass* cl, Int_t n = 1, Bool_t isPreAlloc = kFALSE, TMemberStreamer* s = 0) |
virtual void | ReadFastArrayDouble32(Double_t* d, Int_t n, TStreamerElement* ele = 0) |
virtual void | TBuffer::ReadFastArrayString(Char_t* c, Int_t n) |
virtual TObject* | TBuffer::ReadObject(const TClass* cl) |
virtual void* | ReadObjectAny(const TClass* clCast) |
virtual Int_t | ReadStaticArray(Bool_t* b) |
virtual Int_t | ReadStaticArray(Char_t* c) |
virtual Int_t | ReadStaticArray(UChar_t* c) |
virtual Int_t | ReadStaticArray(Short_t* h) |
virtual Int_t | ReadStaticArray(UShort_t* h) |
virtual Int_t | ReadStaticArray(Int_t* i) |
virtual Int_t | ReadStaticArray(UInt_t* i) |
virtual Int_t | ReadStaticArray(Long_t* l) |
virtual Int_t | ReadStaticArray(ULong_t* l) |
virtual Int_t | ReadStaticArray(Long64_t* l) |
virtual Int_t | ReadStaticArray(ULong64_t* l) |
virtual Int_t | ReadStaticArray(Float_t* f) |
virtual Int_t | ReadStaticArray(Double_t* d) |
virtual Int_t | ReadStaticArrayDouble32(Double_t* d, TStreamerElement* ele = 0) |
char* | TBuffer::ReadString(char* s, Int_t max) |
virtual Version_t | ReadVersion(UInt_t* start = 0, UInt_t* bcnt = 0, const TClass* cl = 0) |
virtual void | TObject::RecursiveRemove(TObject* obj) |
virtual void | TBuffer::Reset() |
void | TObject::ResetBit(UInt_t f) |
void | TBuffer::ResetMap() |
virtual void | TObject::SaveAs(const char* filename = "", Option_t* option = "") const |
virtual void | TObject::SavePrimitive(ostream& out, Option_t* option = "") |
void | TObject::SetBit(UInt_t f) |
void | TObject::SetBit(UInt_t f, Bool_t set) |
void | TBuffer::SetBuffer(void* buf, UInt_t bufsiz = 0, Bool_t adopt = kTRUE) |
void | TBuffer::SetBufferDisplacement() |
void | TBuffer::SetBufferDisplacement(Int_t skipped) |
void | TBuffer::SetBufferOffset(Int_t offset = 0) |
virtual void | SetByteCount(UInt_t cntpos, Bool_t packInVersion = kFALSE) |
void | SetCompressionLevel(int level) |
virtual void | TObject::SetDrawOption(Option_t* option = "") |
static void | TObject::SetDtorOnly(void* obj) |
static void | TBuffer::SetGlobalReadParam(Int_t mapsize) |
static void | TBuffer::SetGlobalWriteParam(Int_t mapsize) |
void | SetIgnoreVerification() |
static void | TObject::SetObjectStat(Bool_t stat) |
void | TBuffer::SetParent(TObject* parent) |
void | TBuffer::SetPidOffset(UShort_t offset) |
void | TBuffer::SetReadMode() |
void | TBuffer::SetReadParam(Int_t mapsize) |
virtual void | SetStreamerElementNumber(Int_t) |
virtual void | TObject::SetUniqueID(UInt_t uid) |
void | TBuffer::SetWriteMode() |
void | TBuffer::SetWriteParam(Int_t mapsize) |
virtual void | ShowMembers(TMemberInspector& insp, char* parent) |
virtual void | SkipObjectAny() |
void* | SqlReadAny(Long64_t keyid, Long64_t objid, TClass** cl, void* obj = 0) |
TSQLStructure* | SqlWriteAny(const void* obj, const TClass* cl, Long64_t objid) |
virtual void | Streamer(TBuffer& b) |
void | StreamerNVirtual(TBuffer& b) |
virtual void | StreamObject(TObject* obj) |
virtual void | StreamObject(void* obj, const type_info& typeinfo) |
virtual void | StreamObject(void* obj, const char* className) |
virtual void | StreamObject(void* obj, const TClass* cl) |
virtual void | StreamObject(void* obj, TMemberStreamer* streamer, const TClass* cl, Int_t n = 0) |
virtual void | TObject::SysError(const char* method, const char* msgfmt) const |
Bool_t | TObject::TestBit(UInt_t f) const |
Int_t | TObject::TestBits(UInt_t f) const |
virtual void | TObject::UseCurrentStyle() |
virtual void | TObject::Warning(const char* method, const char* msgfmt) const |
virtual void | WriteArray(const Bool_t* b, Int_t n) |
virtual void | WriteArray(const Char_t* c, Int_t n) |
virtual void | WriteArray(const UChar_t* c, Int_t n) |
virtual void | WriteArray(const Short_t* h, Int_t n) |
virtual void | WriteArray(const UShort_t* h, Int_t n) |
virtual void | WriteArray(const Int_t* i, Int_t n) |
virtual void | WriteArray(const UInt_t* i, Int_t n) |
virtual void | WriteArray(const Long_t* l, Int_t n) |
virtual void | WriteArray(const ULong_t* l, Int_t n) |
virtual void | WriteArray(const Long64_t* l, Int_t n) |
virtual void | WriteArray(const ULong64_t* l, Int_t n) |
virtual void | WriteArray(const Float_t* f, Int_t n) |
virtual void | WriteArray(const Double_t* d, Int_t n) |
virtual void | WriteArrayDouble32(const Double_t* d, Int_t n, TStreamerElement* ele = 0) |
void | TBuffer::WriteBuf(const void* buf, Int_t max) |
virtual void | WriteClass(const TClass* cl) |
virtual void | WriteDouble32(Double_t* d, TStreamerElement* ele = 0) |
virtual void | WriteFastArray(const Bool_t* b, Int_t n) |
virtual void | WriteFastArray(const Char_t* c, Int_t n) |
virtual void | WriteFastArray(const UChar_t* c, Int_t n) |
virtual void | WriteFastArray(const Short_t* h, Int_t n) |
virtual void | WriteFastArray(const UShort_t* h, Int_t n) |
virtual void | WriteFastArray(const Int_t* i, Int_t n) |
virtual void | WriteFastArray(const UInt_t* i, Int_t n) |
virtual void | WriteFastArray(const Long_t* l, Int_t n) |
virtual void | WriteFastArray(const ULong_t* l, Int_t n) |
virtual void | WriteFastArray(const Long64_t* l, Int_t n) |
virtual void | WriteFastArray(const ULong64_t* l, Int_t n) |
virtual void | WriteFastArray(const Float_t* f, Int_t n) |
virtual void | WriteFastArray(const Double_t* d, Int_t n) |
virtual void | WriteFastArray(void* start, const TClass* cl, Int_t n = 1, TMemberStreamer* s = 0) |
virtual Int_t | WriteFastArray(void** startp, const TClass* cl, Int_t n = 1, Bool_t isPreAlloc = kFALSE, TMemberStreamer* s = 0) |
virtual void | WriteFastArrayDouble32(const Double_t* d, Int_t n, TStreamerElement* ele = 0) |
virtual void | TBuffer::WriteFastArrayString(const Char_t* c, Int_t n) |
virtual void | WriteObject(const TObject* obj) |
virtual Int_t | TBuffer::WriteObjectAny(const void* obj, const TClass* ptrClass) |
void | TBuffer::WriteString(const char* s) |
virtual UInt_t | WriteVersion(const TClass* cl, Bool_t useBcnt = kFALSE) |
virtual UInt_t | TBuffer::WriteVersionMemberWise(const TClass* cl, Bool_t useBcnt = kFALSE) |
protected:
| TBufferSQL2() |
| TBufferSQL2(const TBufferSQL2&) |
void | TBuffer::CheckCount(UInt_t offset) |
UInt_t | TBuffer::CheckObject(UInt_t offset, const TClass* cl, Bool_t readClass = kFALSE) |
virtual void | TObject::DoError(int level, const char* location, const char* fmt, va_list va) const |
void | TBuffer::Expand(Int_t newsize) |
void | TObject::MakeZombie() |
void | operator=(const TBufferSQL2&) |
TSQLStructure* | PopStack() |
TSQLStructure* | PushStack() |
virtual Int_t | TBuffer::Read(const char* name) |
TSQLObjectData* | SqlObjectData(Long64_t objid, TSQLClassInfo* sqlinfo) |
Bool_t | SqlObjectInfo(Long64_t objid, TString& clname, Version_t& version) |
Int_t | SqlReadArraySize() |
void | SqlReadBasic(Char_t& value) |
void | SqlReadBasic(Short_t& value) |
void | SqlReadBasic(Int_t& value) |
void | SqlReadBasic(Long_t& value) |
void | SqlReadBasic(Long64_t& value) |
void | SqlReadBasic(Float_t& value) |
void | SqlReadBasic(Double_t& value) |
void | SqlReadBasic(Bool_t& value) |
void | SqlReadBasic(UChar_t& value) |
void | SqlReadBasic(UShort_t& value) |
void | SqlReadBasic(UInt_t& value) |
void | SqlReadBasic(ULong_t& value) |
void | SqlReadBasic(ULong64_t& value) |
const char* | SqlReadCharStarValue() |
void* | SqlReadObject(void* obj, TClass** cl = 0, TMemberStreamer* streamer = 0, Int_t streamer_index = 0) |
void* | SqlReadObjectDirect(void* obj, TClass** cl, Long64_t objid, TMemberStreamer* streamer = 0, Int_t streamer_index = 0) |
const char* | SqlReadValue(const char* tname) |
Bool_t | SqlWriteBasic(Char_t value) |
Bool_t | SqlWriteBasic(Short_t value) |
Bool_t | SqlWriteBasic(Int_t value) |
Bool_t | SqlWriteBasic(Long_t value) |
Bool_t | SqlWriteBasic(Long64_t value) |
Bool_t | SqlWriteBasic(Float_t value) |
Bool_t | SqlWriteBasic(Double_t value) |
Bool_t | SqlWriteBasic(Bool_t value) |
Bool_t | SqlWriteBasic(UChar_t value) |
Bool_t | SqlWriteBasic(UShort_t value) |
Bool_t | SqlWriteBasic(UInt_t value) |
Bool_t | SqlWriteBasic(ULong_t value) |
Bool_t | SqlWriteBasic(ULong64_t value) |
Int_t | SqlWriteObject(const void* obj, const TClass* objClass, TMemberStreamer* streamer = 0, Int_t streamer_index = 0) |
Bool_t | SqlWriteValue(const char* value, const char* tname) |
TSQLStructure* | Stack(Int_t depth = 0) |
void | WorkWithClass(const char* classname, Version_t classversion) |
void | WorkWithElement(TStreamerElement* elem, Int_t number) |
virtual Int_t | TBuffer::Write(const char* name, Int_t opt, Int_t bufs) |
virtual Int_t | TBuffer::Write(const char* name, Int_t opt, Int_t bufs) const |
virtual void | WriteObject(const void* actualObjStart, const TClass* actualClass) |
Class for serializing/deserializing object to/from SQL data base.
It redefines most of TBuffer class function to convert simple types,
array of simple types and objects to/from TSQLStructure objects.
TBufferSQL2 class uses streaming mechanism, provided by ROOT system,
therefore most of ROOT and user classes can be stored. There are
limitations for complex objects like TTree, TClonesArray, TDirectory and
few other, which can not be converted to SQL (yet).
________________________________________________________________________
void* SqlReadAny(Long64_t keyid, Long64_t objid, TClass** cl, void* obj)
Recreate object from sql structure.
Return pointer to read object.
if (cl!=0) returns pointer to class of object
TSQLObjectData* SqlObjectData(Long64_t objid, TSQLClassInfo* sqlinfo)
creates TSQLObjectData for specifed object id and specified class
Object data for each class can be stored in two different tables.
First table contains data in column-wise form for simple types like integer,
strings and so on when second table contains any other data which cannot
be converted into column-wise representation.
TSQLObjectData will contain results of the requests to both such tables for
concrete object id.
void WriteObject(const TObject *obj)
Convert object into sql structures.
!!! Should be used only by TBufferSQL2 itself.
Use SqlWrite() functions to convert your object to sql
Redefined here to avoid gcc 3.x warning
void ClassBegin(const TClass* cl, Version_t classversion)
This method inform buffer data of which class now
will be streamed. When reading, classversion should be specified
as was read by TBuffer::ReadVersion() call
ClassBegin(), ClassEnd() & ClassMemeber() should be used in
custom class streamers to specify which kind of data are
now streamed to/from buffer. That information is used to correctly
convert class data to/from "normal" sql tables with meaningfull names
and correct datatypes. Without that functions data from custom streamer
will be saved as "raw" data in special _streamer_ table one value after another
Such MUST be used when object is written with standard ROOT streaming
procedure, but should be read back in custom streamer.
For example, custom streamer of TNamed class may look like:
void ClassEnd(const TClass* cl)
Method indicates end of streaming of classdata in custom streamer.
See ClassBegin() method for more details.
void ClassMember(const char* name, const char* typeName, Int_t arrsize1, Int_t arrsize2)
Method indicates name and typename of class memeber,
which should be now streamed in custom streamer
Following combinations are supported:
1. name = "ClassName", typeName = 0 or typename==ClassName
This is a case, when data of parent class "ClassName" should be streamed.
For instance, if class directly inherited from TObject, custom
streamer should include following code:
b.ClassMember("TObject");
TObject::Streamer(b);
2. Basic data type
b.ClassMember("fInt","Int_t");
b >> fInt;
3. Array of basic data types
b.ClassMember("fArr","Int_t", 5);
b.ReadFastArray(fArr, 5);
4. Object as data member
b.ClassMemeber("fName","TString");
fName.Streamer(b);
5. Pointer on object as datamember
b.ClassMemeber("fObj","TObject*");
b.StreamObject(b);
arrsize1 and arrsize2 arguments (when specified) indicate first and
second dimension of array. Can be used for array of basic types.
For more details see ClassBegin() method description.
UInt_t WriteVersion(const TClass *cl, Bool_t )
Copies class version to buffer, but not writes it to sql immidiately
Version will be used to produce complete table
name, which will include class version
void SkipObjectAny()
?????? Skip any kind of object from buffer
!!!!!! fix me, not yet implemented
Should be just skip of current column later
void StreamObject(void *obj, const type_info &typeinfo)
steram object to/from buffer
void StreamObject(void *obj, const char *className)
steram object to/from buffer
Bool_t SqlWriteValue(const char* value, const char* tname)
create structure in stack, which holds specified value
const char* SqlReadValue(const char* tname)
read string value from current stack node
const char* SqlReadCharStarValue()
read CharStar value, if it has special code, request it from large table
Author: Sergey Linev 20/11/2005
Last update: root/sql:$Name: $:$Id: TBufferSQL2.cxx,v 1.13 2006/06/22 08:21:22 brun Exp $
Copyright (C) 1995-2005, Rene Brun and Fons Rademakers. *
ROOT page - Class index - Class Hierarchy - Top of the page
This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.