TXMLPlayer Class Reference

#include <TXMLPlayer.h>

Inheritance diagram for TXMLPlayer:

TObject TObject List of all members.

Public Member Functions

 TXMLPlayer ()
virtual ~TXMLPlayer ()
Bool_t ProduceCode (TList *cllist, const char *filename)
 TXMLPlayer ()
virtual ~TXMLPlayer ()
Bool_t ProduceCode (TList *cllist, const char *filename)

Protected Member Functions

TString GetStreamerName (TClass *cl)
const char * ElementGetter (TClass *cl, const char *membername, int specials=0)
const char * ElementSetter (TClass *cl, const char *membername, char *endch)
TString GetMemberTypeName (TDataMember *member)
TString GetBasicTypeName (TStreamerElement *el)
TString GetBasicTypeReaderMethodName (Int_t type, const char *realname)
void ProduceStreamerSource (ostream &fs, TClass *cl, TList *cllist)
void ReadSTLarg (ostream &fs, TString &argname, int argtyp, Bool_t isargptr, TClass *argcl, TString &tname, TString &ifcond)
void WriteSTLarg (ostream &fs, const char *accname, int argtyp, Bool_t isargptr, TClass *argcl)
Bool_t ProduceSTLstreamer (ostream &fs, TClass *cl, TStreamerSTL *el, Bool_t isWriting)
TString GetStreamerName (TClass *cl)
const char * ElementGetter (TClass *cl, const char *membername, int specials=0)
const char * ElementSetter (TClass *cl, const char *membername, char *endch)
TString GetMemberTypeName (TDataMember *member)
TString GetBasicTypeName (TStreamerElement *el)
TString GetBasicTypeReaderMethodName (Int_t type, const char *realname)
void ProduceStreamerSource (ostream &fs, TClass *cl, TList *cllist)
void ReadSTLarg (ostream &fs, TString &argname, int argtyp, Bool_t isargptr, TClass *argcl, TString &tname, TString &ifcond)
void WriteSTLarg (ostream &fs, const char *accname, int argtyp, Bool_t isargptr, TClass *argcl)
Bool_t ProduceSTLstreamer (ostream &fs, TClass *cl, TStreamerSTL *el, Bool_t isWriting)

Protected Attributes

TString fGetterName
TString fSetterName
 buffer for name of getter method
TXMLSetup fXmlSetup
 buffer for name of setter method

Detailed Description

Definition at line 32 of file TXMLPlayer.h.


Constructor & Destructor Documentation

TXMLPlayer::TXMLPlayer (  ) 

Definition at line 133 of file TXMLPlayer.cxx.

TXMLPlayer::~TXMLPlayer (  )  [virtual]

Definition at line 139 of file TXMLPlayer.cxx.

TXMLPlayer::TXMLPlayer (  ) 

virtual TXMLPlayer::~TXMLPlayer (  )  [virtual]


Member Function Documentation

Bool_t TXMLPlayer::ProduceCode ( TList *  cllist,
const char *  filename 
)

Definition at line 156 of file TXMLPlayer.cxx.

References TObjArray::Add(), TObjArray::Delete(), TObjArray::FindObject(), TClass::GetDeclFileName(), GetStreamerName(), kFALSE, kTRUE, names_xmlfileclass, ProduceStreamerSource(), and TIter::Reset().

TString TXMLPlayer::GetStreamerName ( TClass *  cl  )  [protected]

Definition at line 145 of file TXMLPlayer.cxx.

Referenced by ProduceCode(), ProduceStreamerSource(), ReadSTLarg(), and WriteSTLarg().

const char * TXMLPlayer::ElementGetter ( TClass *  cl,
const char *  membername,
int  specials = 0 
) [protected]

Definition at line 313 of file TXMLPlayer.cxx.

References buf, TString::Data(), fGetterName, TDataMember::GetArrayDim(), TClass::GetBaseDataMember(), TClass::GetDataMember(), GetMemberTypeName(), TMethodCall::GetMethod(), TMethodCall::GetMethodName(), TDataMember::GetOffset(), TDataMember::GetterMethod(), TDataMember::IsaPointer(), TDataMember::Property(), and TFunction::Property().

Referenced by ProduceSTLstreamer(), and ProduceStreamerSource().

const char * TXMLPlayer::ElementSetter ( TClass *  cl,
const char *  membername,
char *  endch 
) [protected]

Definition at line 372 of file TXMLPlayer.cxx.

References TString::Data(), fSetterName, TDataMember::GetArrayDim(), TClass::GetBaseDataMember(), TClass::GetDataMember(), GetMemberTypeName(), TMethodCall::GetMethod(), TMethodCall::GetMethodName(), TDataMember::GetOffset(), TDataMember::IsaPointer(), TDataMember::Property(), TFunction::Property(), TDataMember::SetterMethod(), and strcpy().

Referenced by ProduceSTLstreamer(), and ProduceStreamerSource().

TString TXMLPlayer::GetMemberTypeName ( TDataMember *  member  )  [protected]

Definition at line 214 of file TXMLPlayer.cxx.

References TDataMember::GetDataType(), TDataType::GetType(), TDataType::GetTypeName(), TDataMember::GetTypeName(), TDataMember::IsBasic(), TDataMember::IsEnum(), kBool_t, kChar_t, kDouble32_t, kDouble_t, kFloat16_t, kFloat_t, kInt_t, kLong64_t, kLong_t, kShort_t, kUChar_t, kUInt_t, kULong64_t, kULong_t, and kUShort_t.

Referenced by ElementGetter(), and ElementSetter().

TString TXMLPlayer::GetBasicTypeName ( TStreamerElement *  el  )  [protected]

Definition at line 249 of file TXMLPlayer.cxx.

References TStreamerElement::GetType(), TStreamerElement::GetTypeNameBasic(), TVirtualStreamerInfo::kBool, TVirtualStreamerInfo::kChar, TVirtualStreamerInfo::kCounter, TVirtualStreamerInfo::kDouble, TVirtualStreamerInfo::kDouble32, TVirtualStreamerInfo::kFloat, TVirtualStreamerInfo::kFloat16, TVirtualStreamerInfo::kInt, TVirtualStreamerInfo::kLong, TVirtualStreamerInfo::kLong64, TVirtualStreamerInfo::kShort, TVirtualStreamerInfo::kUChar, TVirtualStreamerInfo::kUInt, TVirtualStreamerInfo::kULong, TVirtualStreamerInfo::kULong64, and TVirtualStreamerInfo::kUShort.

TString TXMLPlayer::GetBasicTypeReaderMethodName ( Int_t  type,
const char *  realname 
) [protected]

Definition at line 280 of file TXMLPlayer.cxx.

References TVirtualStreamerInfo::kBool, TVirtualStreamerInfo::kChar, TVirtualStreamerInfo::kCounter, TVirtualStreamerInfo::kDouble, TVirtualStreamerInfo::kDouble32, TVirtualStreamerInfo::kFloat, TVirtualStreamerInfo::kFloat16, TString::kIgnoreCase, TVirtualStreamerInfo::kInt, TVirtualStreamerInfo::kLong, TVirtualStreamerInfo::kLong64, TVirtualStreamerInfo::kShort, TVirtualStreamerInfo::kUChar, TVirtualStreamerInfo::kUInt, TVirtualStreamerInfo::kULong, TVirtualStreamerInfo::kULong64, and TVirtualStreamerInfo::kUShort.

Referenced by ProduceStreamerSource(), and ReadSTLarg().

void TXMLPlayer::ProduceStreamerSource ( ostream &  fs,
TClass *  cl,
TList *  cllist 
) [protected]

Definition at line 408 of file TXMLPlayer.cxx.

References TObjArray::At(), c1, ElementGetter(), ElementSetter(), TPad::FindObject(), GetBasicTypeReaderMethodName(), TStreamerBasicPointer::GetCountName(), TObjArray::GetLast(), TPad::GetName(), TStreamerSTL::GetSTLtype(), TClass::GetStreamerInfo(), GetStreamerName(), info, TVirtualStreamerInfo::kAny, TVirtualStreamerInfo::kAnyp, TVirtualStreamerInfo::kAnyP, TVirtualStreamerInfo::kBase, TVirtualStreamerInfo::kBool, TVirtualStreamerInfo::kChar, TVirtualStreamerInfo::kCharStar, TVirtualStreamerInfo::kCounter, TVirtualStreamerInfo::kDouble, TVirtualStreamerInfo::kDouble32, TVirtualStreamerInfo::kFloat, TVirtualStreamerInfo::kFloat16, TVirtualStreamerInfo::kInt, TVirtualStreamerInfo::kLong, TVirtualStreamerInfo::kLong64, TVirtualStreamerInfo::kOffsetL, TVirtualStreamerInfo::kOffsetP, TVirtualStreamerInfo::kShort, TVirtualStreamerInfo::kSTL, TVirtualStreamerInfo::kSTLp, TVirtualStreamerInfo::kUChar, TVirtualStreamerInfo::kUInt, TVirtualStreamerInfo::kULong, TVirtualStreamerInfo::kULong64, TVirtualStreamerInfo::kUShort, n, names_xmlfileclass, ProduceSTLstreamer(), TIter::Reset(), tab1, tab2, tab3, and tab4.

Referenced by ProduceCode().

void TXMLPlayer::ReadSTLarg ( ostream &  fs,
TString &  argname,
int  argtyp,
Bool_t  isargptr,
TClass *  argcl,
TString &  tname,
TString &  ifcond 
) [protected]

Definition at line 825 of file TXMLPlayer.cxx.

References buf, TString::Data(), GetBasicTypeReaderMethodName(), GetStreamerName(), TVirtualStreamerInfo::kBool, TVirtualStreamerInfo::kChar, TVirtualStreamerInfo::kCounter, TVirtualStreamerInfo::kDouble, TVirtualStreamerInfo::kDouble32, TVirtualStreamerInfo::kFloat, TVirtualStreamerInfo::kFloat16, TVirtualStreamerInfo::kInt, TVirtualStreamerInfo::kLong, TVirtualStreamerInfo::kLong64, TVirtualStreamerInfo::kObject, TVirtualStreamerInfo::kShort, TVirtualStreamerInfo::kSTLstring, TVirtualStreamerInfo::kUChar, TVirtualStreamerInfo::kUInt, TVirtualStreamerInfo::kULong, TVirtualStreamerInfo::kULong64, TVirtualStreamerInfo::kUShort, and TString::Length().

Referenced by ProduceSTLstreamer().

void TXMLPlayer::WriteSTLarg ( ostream &  fs,
const char *  accname,
int  argtyp,
Bool_t  isargptr,
TClass *  argcl 
) [protected]

Definition at line 891 of file TXMLPlayer.cxx.

References GetStreamerName(), TVirtualStreamerInfo::kBool, TVirtualStreamerInfo::kChar, TVirtualStreamerInfo::kCounter, TVirtualStreamerInfo::kDouble, TVirtualStreamerInfo::kDouble32, TVirtualStreamerInfo::kFloat, TVirtualStreamerInfo::kFloat16, TVirtualStreamerInfo::kInt, TVirtualStreamerInfo::kLong, TVirtualStreamerInfo::kLong64, TVirtualStreamerInfo::kObject, TVirtualStreamerInfo::kShort, TVirtualStreamerInfo::kSTLstring, TVirtualStreamerInfo::kUChar, TVirtualStreamerInfo::kUInt, TVirtualStreamerInfo::kULong, TVirtualStreamerInfo::kULong64, and TVirtualStreamerInfo::kUShort.

Referenced by ProduceSTLstreamer().

Bool_t TXMLPlayer::ProduceSTLstreamer ( ostream &  fs,
TClass *  cl,
TStreamerSTL *  el,
Bool_t  isWriting 
) [protected]

Definition at line 942 of file TXMLPlayer.cxx.

References buf, ElementGetter(), ElementSetter(), TCollection::FindObject(), fXmlSetup, TStreamerElement::GetArrayLength(), TClass::GetClass(), TStreamerElement::GetClassPointer(), TROOT::GetListOfTypes(), TNamed::GetName(), TClassEdit::GetSplit(), TStreamerSTL::GetSTLtype(), TDataType::GetType(), gROOT, TStreamerSTL::IsaPointer(), TClassEdit::IsSTLCont(), TClassEdit::kDeque, TClassEdit::kDropStlDefault, TClassEdit::kList, TClassEdit::kMap, TClassEdit::kMultiMap, TClassEdit::kMultiSet, TVirtualStreamerInfo::kObject, TClassEdit::kSet, TStreamerElement::kSTLstring, TVirtualStreamerInfo::kSTLstring, TClassEdit::kVector, TString::Length(), n, ReadSTLarg(), TClassEdit::ShortType(), TClassEdit::STLKind(), strlcat(), strlcpy(), tab1, tab2, tab3, tab4, WriteSTLarg(), and TXMLSetup::XmlGetElementName().

Referenced by ProduceStreamerSource().

Bool_t TXMLPlayer::ProduceCode ( TList *  cllist,
const char *  filename 
)

TString TXMLPlayer::GetStreamerName ( TClass *  cl  )  [protected]

const char* TXMLPlayer::ElementGetter ( TClass *  cl,
const char *  membername,
int  specials = 0 
) [protected]

const char* TXMLPlayer::ElementSetter ( TClass *  cl,
const char *  membername,
char *  endch 
) [protected]

TString TXMLPlayer::GetMemberTypeName ( TDataMember *  member  )  [protected]

TString TXMLPlayer::GetBasicTypeName ( TStreamerElement *  el  )  [protected]

TString TXMLPlayer::GetBasicTypeReaderMethodName ( Int_t  type,
const char *  realname 
) [protected]

void TXMLPlayer::ProduceStreamerSource ( ostream &  fs,
TClass *  cl,
TList *  cllist 
) [protected]

void TXMLPlayer::ReadSTLarg ( ostream &  fs,
TString &  argname,
int  argtyp,
Bool_t  isargptr,
TClass *  argcl,
TString &  tname,
TString &  ifcond 
) [protected]

void TXMLPlayer::WriteSTLarg ( ostream &  fs,
const char *  accname,
int  argtyp,
Bool_t  isargptr,
TClass *  argcl 
) [protected]

Bool_t TXMLPlayer::ProduceSTLstreamer ( ostream &  fs,
TClass *  cl,
TStreamerSTL *  el,
Bool_t  isWriting 
) [protected]


Member Data Documentation

TString TXMLPlayer::fGetterName [protected]

Definition at line 55 of file TXMLPlayer.h.

Referenced by ElementGetter().

TString TXMLPlayer::fSetterName [protected]

buffer for name of getter method

Definition at line 56 of file TXMLPlayer.h.

Referenced by ElementSetter().

TXMLSetup TXMLPlayer::fXmlSetup [protected]

buffer for name of setter method

Definition at line 57 of file TXMLPlayer.h.

Referenced by ProduceSTLstreamer().


The documentation for this class was generated from the following files:
Generated on Tue Jul 5 16:49:53 2011 for ROOT_528-00b_version by  doxygen 1.5.1