Hello again I think I have localised my "problem". Now I have to ask some stupid questions and wait to get roundly chastised for my ignorance. Let's go! For streaming member pointers I rely heavily on the very clear reply given by Rene to Paolo Adragna (http://root.cern.ch/root/roottalk/roottalk03/2707.html). If a class contains a member pointer which may or may not point to a valid object (i.e. initialised to 0 in the default ctor) then the comment field is "//" and when reading the object the class' default ctor is called (pointer initialised to 0) and then in the automatic streamer for the class R__b >> fPointer is used, which I suppose creates an object for fPointer to point to and then fills it from the buffer R__b. So any class with a "//" member pointer is obliged to call its ctor when one of its objects is read - even if e.g. in a TTree we use TBranch::SetAutoDelete(kFALSE) or TStreamerInfo::SetCanDelete(kFALSE). OK fine. But now, let's suppose that I decide that in fact fPointer can point to a valid object all the time, i.e. I initialise it in the ctor with fPointer = new SomeClass(); Then I put "//->" in the comment field of fPointer, and the automatic streamer should use fPointer->Streamer(); In this case, when I read in an object of my class, ROOT should just call the streamer for the class - it must not call the default ctor otherwise it will create a new SomeClass() object everytime. This is part of the message we are giving with "//->" yes ?? The other part is of course that the automatic streamer should change. However, I have just realised that in all the automatic streamers of all my classes the only member pointers with "//->" comment fields which actually have "fPointer->Streamer()" are TClonesArray pointers. As an example you will find attached MyClass with the dictionary generated with the command rootcint -v -f MyClass_Dict.C -c -p MyClass.h Now tell me that all this is normal !!! Yours, John -- John D. Frankland <mailto:frankland@ganil.fr> Beam Coordinator GANIL B.P. 55027 14076 CAEN Cedex 05 *tel:* +33 (0)231454628 *fax:* +33 (0)231454665 #include "MyClass.h" ClassImp(MyClass) /////////////////////// // MyClass // /////////////////////// MyClass::MyClass() { fList=new fList; fRef=0; fVector=new TVector3(0.,0.,0); fClones=new TClonesArray("TVector3",50); } MyClass::~MyClass() { delete fList; fList=0; fRef=0; delete fVector; fVector=0; delete fClones; fClones=0; } #include "TObject.h" #include "TList.h" #include "TRef.h" #include "TVector3.h" #include "TClonesArray.h" class MyClass : public TObject { TList *fList;//-> TRef fRef; TVector3 *fVector;//-> TClonesArray *fClones;//-> public: MyClass(); virtual ~MyClass(); ClassDef(MyClass,1)//MyClass is great }; // // File generated by rootcint at Mon Oct 27 16:35:17 2003. // Do NOT change. Changes will be lost next time file is generated // #include "RConfig.h" #if !defined(R__ACCESS_IN_SYMBOL) //Break the privacy of classes -- Disabled for the moment #define private public #define protected public #endif #include "MyClass_Dict.h" #include "TClass.h" #include "TBuffer.h" #include "TMemberInspector.h" #include "TError.h" #ifndef G__ROOT #define G__ROOT #endif // Since CINT ignores the std namespace, we need to do so in this file. namespace std {} using namespace std; #include "RtypesImp.h" namespace ROOT { namespace Shadow { } // Of namespace ROOT::Shadow } // Of namespace ROOT namespace ROOT { void MyClass_ShowMembers(void *obj, TMemberInspector &R__insp, char *R__parent); TClass *MyClass_IsA(const void*); void *new_MyClass(void *p = 0); void *newArray_MyClass(Long_t size); void delete_MyClass(void *p); void deleteArray_MyClass(void *p); void destruct_MyClass(void *p); // Function generating the singleton type initializer TGenericClassInfo *GenerateInitInstance(const MyClass*) { MyClass *ptr = 0; static ROOT::TGenericClassInfo instance("MyClass", MyClass::Class_Version(), "MyClass.h", 8, typeid(MyClass), DefineBehavior(ptr, ptr), &::MyClass::Dictionary, &MyClass_IsA, 0); instance.SetNew(&new_MyClass); instance.SetNewArray(&newArray_MyClass); instance.SetDelete(&delete_MyClass); instance.SetDeleteArray(&deleteArray_MyClass); instance.SetDestructor(&destruct_MyClass); return &instance; } // Static variable to force the class initialization static ROOT::TGenericClassInfo *_R__UNIQUE_(Init) = GenerateInitInstance((const MyClass*)0x0); R__UseDummy(_R__UNIQUE_(Init)); } //______________________________________________________________________________ TClass *MyClass::fgIsA = 0; // static to hold class pointer //______________________________________________________________________________ const char *MyClass::Class_Name() { return "MyClass"; } //______________________________________________________________________________ const char *MyClass::ImplFileName() { return ROOT::GenerateInitInstance((const MyClass*)0x0)->GetImplFileName(); } //______________________________________________________________________________ int MyClass::ImplFileLine() { return ROOT::GenerateInitInstance((const MyClass*)0x0)->GetImplFileLine(); } //______________________________________________________________________________ void MyClass::Dictionary() { fgIsA = ROOT::GenerateInitInstance((const MyClass*)0x0)->GetClass(); } //______________________________________________________________________________ TClass *MyClass::Class() { if (!fgIsA) fgIsA = ROOT::GenerateInitInstance((const MyClass*)0x0)->GetClass(); return fgIsA; } //______________________________________________________________________________ void MyClass::Streamer(TBuffer &R__b) { // Stream an object of class MyClass. UInt_t R__s, R__c; if (R__b.IsReading()) { Version_t R__v = R__b.ReadVersion(&R__s, &R__c); if (R__v) { } TObject::Streamer(R__b); R__b >> fList; fRef.Streamer(R__b); R__b >> fVector; fClones->Streamer(R__b); R__b.CheckByteCount(R__s, R__c, MyClass::IsA()); } else { R__c = R__b.WriteVersion(MyClass::IsA(), kTRUE); TObject::Streamer(R__b); R__b << fList; fRef.Streamer(R__b); R__b << fVector; fClones->Streamer(R__b); R__b.SetByteCount(R__c, kTRUE); } } //______________________________________________________________________________ void MyClass::ShowMembers(TMemberInspector &R__insp, char *R__parent) { // Inspect the data members of an object of class MyClass. TClass *R__cl = MyClass::IsA(); Int_t R__ncp = strlen(R__parent); if (R__ncp || R__cl || R__insp.IsA()) { } R__insp.Inspect(R__cl, R__parent, "*fList", &fList); R__insp.Inspect(R__cl, R__parent, "fRef", &fRef); fRef.ShowMembers(R__insp, strcat(R__parent,"fRef.")); R__parent[R__ncp] = 0; R__insp.Inspect(R__cl, R__parent, "*fVector", &fVector); R__insp.Inspect(R__cl, R__parent, "*fClones", &fClones); TObject::ShowMembers(R__insp, R__parent); } namespace ROOT { // Return the actual TClass for the object argument TClass *MyClass_IsA(const void *obj) { return ((::MyClass*)obj)->IsA(); } // Wrappers around operator new void *new_MyClass(void *p) { return p ? new(p) ::MyClass : new ::MyClass; } void *newArray_MyClass(Long_t size) { return new ::MyClass[size]; } // Wrapper around operator delete void delete_MyClass(void *p) { delete ((::MyClass*)p); } void deleteArray_MyClass(void *p) { delete [] ((::MyClass*)p); } void destruct_MyClass(void *p) { typedef ::MyClass current_t; ((current_t*)p)->~current_t(); } } // end of namespace ROOT for class MyClass /******************************************************** * MyClass_Dict.C ********************************************************/ #ifdef G__MEMTEST #undef malloc #undef free #endif extern "C" void G__cpp_reset_tagtableMyClass_Dict(); extern "C" void G__set_cpp_environmentMyClass_Dict() { G__add_compiledheader("TROOT.h"); G__add_compiledheader("TMemberInspector.h"); G__add_compiledheader("MyClass.h"); G__cpp_reset_tagtableMyClass_Dict(); } class G__MyClass_DictdOC_tag {}; void* operator new(size_t size,G__MyClass_DictdOC_tag* p) { if(p && G__PVOID!=G__getgvp()) return((void*)p); #ifndef G__ROOT return(malloc(size)); #else return(::operator new(size)); #endif } /* dummy, for exception */ #ifdef G__EH_DUMMY_DELETE void operator delete(void *p,G__MyClass_DictdOC_tag* x) { if((long)p==G__getgvp() && G__PVOID!=G__getgvp()) return; #ifndef G__ROOT free(p); #else ::operator delete(p); #endif } #endif static void G__operator_delete(void *p) { if((long)p==G__getgvp() && G__PVOID!=G__getgvp()) return; #ifndef G__ROOT free(p); #else ::operator delete(p); #endif } void G__DELDMY_MyClass_DictdOC() { G__operator_delete(0); } extern "C" int G__cpp_dllrevMyClass_Dict() { return(30051515); } /********************************************************* * Member function Interface Method *********************************************************/ /* MyClass */ static int G__MyClass_Dict_143_0_0(G__value *result7,G__CONST char *funcname,struct G__param *libp,int hash) { MyClass *p=NULL; if(G__getaryconstruct()) p=new MyClass[G__getaryconstruct()]; else p=new MyClass; result7->obj.i = (long)p; result7->ref = (long)p; result7->type = 'u'; result7->tagnum = G__get_linked_tagnum(&G__MyClass_DictLN_MyClass); return(1 || funcname || hash || result7 || libp) ; } static int G__MyClass_Dict_143_2_0(G__value *result7,G__CONST char *funcname,struct G__param *libp,int hash) { G__letint(result7,85,(long)MyClass::Class()); return(1 || funcname || hash || result7 || libp) ; } static int G__MyClass_Dict_143_3_0(G__value *result7,G__CONST char *funcname,struct G__param *libp,int hash) { G__letint(result7,67,(long)MyClass::Class_Name()); return(1 || funcname || hash || result7 || libp) ; } static int G__MyClass_Dict_143_4_0(G__value *result7,G__CONST char *funcname,struct G__param *libp,int hash) { G__letint(result7,115,(long)MyClass::Class_Version()); return(1 || funcname || hash || result7 || libp) ; } static int G__MyClass_Dict_143_5_0(G__value *result7,G__CONST char *funcname,struct G__param *libp,int hash) { G__setnull(result7); MyClass::Dictionary(); return(1 || funcname || hash || result7 || libp) ; } static int G__MyClass_Dict_143_6_0(G__value *result7,G__CONST char *funcname,struct G__param *libp,int hash) { G__letint(result7,85,(long)((const MyClass*)(G__getstructoffset()))->IsA()); return(1 || funcname || hash || result7 || libp) ; } static int G__MyClass_Dict_143_7_0(G__value *result7,G__CONST char *funcname,struct G__param *libp,int hash) { G__setnull(result7); ((MyClass*)(G__getstructoffset()))->ShowMembers(*(TMemberInspector*)libp->para[0].ref,(char*)G__int(libp->para[1])); return(1 || funcname || hash || result7 || libp) ; } static int G__MyClass_Dict_143_8_0(G__value *result7,G__CONST char *funcname,struct G__param *libp,int hash) { G__setnull(result7); ((MyClass*)(G__getstructoffset()))->Streamer(*(TBuffer*)libp->para[0].ref); return(1 || funcname || hash || result7 || libp) ; } static int G__MyClass_Dict_143_9_0(G__value *result7,G__CONST char *funcname,struct G__param *libp,int hash) { G__setnull(result7); ((MyClass*)(G__getstructoffset()))->StreamerNVirtual(*(TBuffer*)libp->para[0].ref); return(1 || funcname || hash || result7 || libp) ; } static int G__MyClass_Dict_143_0_1(G__value *result7,G__CONST char *funcname,struct G__param *libp,int hash) { G__letint(result7,67,(long)MyClass::DeclFileName()); return(1 || funcname || hash || result7 || libp) ; } static int G__MyClass_Dict_143_1_1(G__value *result7,G__CONST char *funcname,struct G__param *libp,int hash) { G__letint(result7,105,(long)MyClass::ImplFileLine()); return(1 || funcname || hash || result7 || libp) ; } static int G__MyClass_Dict_143_2_1(G__value *result7,G__CONST char *funcname,struct G__param *libp,int hash) { G__letint(result7,67,(long)MyClass::ImplFileName()); return(1 || funcname || hash || result7 || libp) ; } static int G__MyClass_Dict_143_3_1(G__value *result7,G__CONST char *funcname,struct G__param *libp,int hash) { G__letint(result7,105,(long)MyClass::DeclFileLine()); return(1 || funcname || hash || result7 || libp) ; } // automatic copy constructor static int G__MyClass_Dict_143_4_1(G__value *result7,G__CONST char *funcname,struct G__param *libp,int hash) { MyClass *p; void *xtmp = (void*)G__int(libp->para[0]); p=new MyClass(*(MyClass*)xtmp); result7->obj.i = (long)p; result7->ref = (long)p; result7->type = 'u'; result7->tagnum = G__get_linked_tagnum(&G__MyClass_DictLN_MyClass); return(1 || funcname || hash || result7 || libp) ; } // automatic destructor typedef MyClass G__TMyClass; static int G__MyClass_Dict_143_5_1(G__value *result7,G__CONST char *funcname,struct G__param *libp,int hash) { if(0==G__getstructoffset()) return(1); if(G__getaryconstruct()) if(G__PVOID==G__getgvp()) delete[] (MyClass *)(G__getstructoffset()); else for(int i=G__getaryconstruct()-1;i>=0;i--) delete (MyClass *)((G__getstructoffset())+sizeof(MyClass)*i); else delete (MyClass *)(G__getstructoffset()); G__setnull(result7); return(1 || funcname || hash || result7 || libp) ; } /* Setting up global function */ /********************************************************* * Member function Stub *********************************************************/ /* MyClass */ /********************************************************* * Global function Stub *********************************************************/ /********************************************************* * Get size of pointer to member function *********************************************************/ class G__Sizep2memfuncMyClass_Dict { public: G__Sizep2memfuncMyClass_Dict() {p=&G__Sizep2memfuncMyClass_Dict::sizep2memfunc;} size_t sizep2memfunc() { return(sizeof(p)); } private: size_t (G__Sizep2memfuncMyClass_Dict::*p)(); }; size_t G__get_sizep2memfuncMyClass_Dict() { G__Sizep2memfuncMyClass_Dict a; G__setsizep2memfunc((int)a.sizep2memfunc()); return((size_t)a.sizep2memfunc()); } /********************************************************* * virtual base class offset calculation interface *********************************************************/ /* Setting up class inheritance */ /********************************************************* * Inheritance information setup/ *********************************************************/ extern "C" void G__cpp_setup_inheritanceMyClass_Dict() { /* Setting up class inheritance */ if(0==G__getnumbaseclass(G__get_linked_tagnum(&G__MyClass_DictLN_MyClass))) { MyClass *G__Lderived; G__Lderived=(MyClass*)0x1000; { TObject *G__Lpbase=(TObject*)G__Lderived; G__inheritance_setup(G__get_linked_tagnum(&G__MyClass_DictLN_MyClass),G__get_linked_tagnum(&G__MyClass_DictLN_TObject),(long)G__Lpbase-(long)G__Lderived,1,1); } } } /********************************************************* * typedef information setup/ *********************************************************/ extern "C" void G__cpp_setup_typetableMyClass_Dict() { /* Setting up typedef entry */ G__search_typename2("Version_t",115,-1,0, -1); G__setnewtype(-1,"Class version identifier (short)",0); } /********************************************************* * Data Member information setup/ *********************************************************/ /* Setting up class,struct,union tag member variable */ /* MyClass */ static void G__setup_memvarMyClass(void) { G__tag_memvar_setup(G__get_linked_tagnum(&G__MyClass_DictLN_MyClass)); { MyClass *p; p=(MyClass*)0x1000; if (p) { } G__memvar_setup((void*)NULL,85,0,0,G__get_linked_tagnum(&G__MyClass_DictLN_TList),-1,-1,4,"fList=",0,"->"); G__memvar_setup((void*)NULL,117,0,0,G__get_linked_tagnum(&G__MyClass_DictLN_TRef),-1,-1,4,"fRef=",0,(char*)NULL); G__memvar_setup((void*)NULL,85,0,0,G__get_linked_tagnum(&G__MyClass_DictLN_TVector3),-1,-1,4,"fVector=",0,"->"); G__memvar_setup((void*)NULL,85,0,0,G__get_linked_tagnum(&G__MyClass_DictLN_TClonesArray),-1,-1,4,"fClones=",0,"->"); G__memvar_setup((void*)NULL,85,0,0,G__get_linked_tagnum(&G__MyClass_DictLN_TClass),-1,-2,4,"fgIsA=",0,(char*)NULL); } G__tag_memvar_reset(); } extern "C" void G__cpp_setup_memvarMyClass_Dict() { } /*********************************************************** ************************************************************ ************************************************************ ************************************************************ ************************************************************ ************************************************************ ************************************************************ ***********************************************************/ /********************************************************* * Member function information setup for each class *********************************************************/ static void G__setup_memfuncMyClass(void) { /* MyClass */ G__tag_memfunc_setup(G__get_linked_tagnum(&G__MyClass_DictLN_MyClass)); G__memfunc_setup("MyClass",700,G__MyClass_Dict_143_0_0,105,G__get_linked_tagnum(&G__MyClass_DictLN_MyClass),-1,0,0,1,1,0,"",(char*)NULL,(void*)NULL,0); G__memfunc_setup("Class",502,G__MyClass_Dict_143_2_0,85,G__get_linked_tagnum(&G__MyClass_DictLN_TClass),-1,0,0,3,1,0,"",(char*)NULL,(void*)NULL,0); G__memfunc_setup("Class_Name",982,G__MyClass_Dict_143_3_0,67,-1,-1,0,0,3,1,1,"",(char*)NULL,(void*)NULL,0); G__memfunc_setup("Class_Version",1339,G__MyClass_Dict_143_4_0,115,-1,G__defined_typename("Version_t"),0,0,3,1,0,"",(char*)NULL,(void*)NULL,0); G__memfunc_setup("Dictionary",1046,G__MyClass_Dict_143_5_0,121,-1,-1,0,0,3,1,0,"",(char*)NULL,(void*)NULL,0); G__memfunc_setup("IsA",253,G__MyClass_Dict_143_6_0,85,G__get_linked_tagnum(&G__MyClass_DictLN_TClass),-1,0,0,1,1,8,"",(char*)NULL,(void*)NULL,1); G__memfunc_setup("ShowMembers",1132,G__MyClass_Dict_143_7_0,121,-1,-1,0,2,1,1,0, "u 'TMemberInspector' - 1 - insp C - - 0 - parent",(char*)NULL,(void*)NULL,1); G__memfunc_setup("Streamer",835,G__MyClass_Dict_143_8_0,121,-1,-1,0,1,1,1,0,"u 'TBuffer' - 1 - b",(char*)NULL,(void*)NULL,1); G__memfunc_setup("StreamerNVirtual",1656,G__MyClass_Dict_143_9_0,121,-1,-1,0,1,1,1,0,"u 'TBuffer' - 1 - b",(char*)NULL,(void*)NULL,0); G__memfunc_setup("DeclFileName",1145,G__MyClass_Dict_143_0_1,67,-1,-1,0,0,3,1,1,"",(char*)NULL,(void*)NULL,0); G__memfunc_setup("ImplFileLine",1178,G__MyClass_Dict_143_1_1,105,-1,-1,0,0,3,1,0,"",(char*)NULL,(void*)NULL,0); G__memfunc_setup("ImplFileName",1171,G__MyClass_Dict_143_2_1,67,-1,-1,0,0,3,1,1,"",(char*)NULL,(void*)NULL,0); G__memfunc_setup("DeclFileLine",1152,G__MyClass_Dict_143_3_1,105,-1,-1,0,0,3,1,0,"",(char*)NULL,(void*)NULL,0); // automatic copy constructor G__memfunc_setup("MyClass",700,G__MyClass_Dict_143_4_1,(int)('i'),G__get_linked_tagnum(&G__MyClass_DictLN_MyClass),-1,0,1,1,1,0,"u 'MyClass' - 11 - -",(char*)NULL,(void*)NULL,0); // automatic destructor G__memfunc_setup("~MyClass",826,G__MyClass_Dict_143_5_1,(int)('y'),-1,-1,0,0,1,1,0,"",(char*)NULL,(void*)NULL,1); G__tag_memfunc_reset(); } /********************************************************* * Member function information setup *********************************************************/ extern "C" void G__cpp_setup_memfuncMyClass_Dict() { } /********************************************************* * Global variable information setup for each class *********************************************************/ static void G__cpp_setup_global0() { /* Setting up global variables */ G__resetplocal(); G__resetglobalenv(); } extern "C" void G__cpp_setup_globalMyClass_Dict() { G__cpp_setup_global0(); } /********************************************************* * Global function information setup for each class *********************************************************/ static void G__cpp_setup_func0() { G__lastifuncposition(); } static void G__cpp_setup_func1() { } static void G__cpp_setup_func2() { } static void G__cpp_setup_func3() { } static void G__cpp_setup_func4() { G__resetifuncposition(); } extern "C" void G__cpp_setup_funcMyClass_Dict() { G__cpp_setup_func0(); G__cpp_setup_func1(); G__cpp_setup_func2(); G__cpp_setup_func3(); G__cpp_setup_func4(); } /********************************************************* * Class,struct,union,enum tag information setup *********************************************************/ /* Setup class/struct taginfo */ G__linked_taginfo G__MyClass_DictLN_TClass = { "TClass" , 99 , -1 }; G__linked_taginfo G__MyClass_DictLN_TBuffer = { "TBuffer" , 99 , -1 }; G__linked_taginfo G__MyClass_DictLN_TMemberInspector = { "TMemberInspector" , 99 , -1 }; G__linked_taginfo G__MyClass_DictLN_TObject = { "TObject" , 99 , -1 }; G__linked_taginfo G__MyClass_DictLN_TList = { "TList" , 99 , -1 }; G__linked_taginfo G__MyClass_DictLN_TRef = { "TRef" , 99 , -1 }; G__linked_taginfo G__MyClass_DictLN_TVector3 = { "TVector3" , 99 , -1 }; G__linked_taginfo G__MyClass_DictLN_TClonesArray = { "TClonesArray" , 99 , -1 }; G__linked_taginfo G__MyClass_DictLN_MyClass = { "MyClass" , 99 , -1 }; /* Reset class/struct taginfo */ extern "C" void G__cpp_reset_tagtableMyClass_Dict() { G__MyClass_DictLN_TClass.tagnum = -1 ; G__MyClass_DictLN_TBuffer.tagnum = -1 ; G__MyClass_DictLN_TMemberInspector.tagnum = -1 ; G__MyClass_DictLN_TObject.tagnum = -1 ; G__MyClass_DictLN_TList.tagnum = -1 ; G__MyClass_DictLN_TRef.tagnum = -1 ; G__MyClass_DictLN_TVector3.tagnum = -1 ; G__MyClass_DictLN_TClonesArray.tagnum = -1 ; G__MyClass_DictLN_MyClass.tagnum = -1 ; } extern "C" void G__cpp_setup_tagtableMyClass_Dict() { /* Setting up class,struct,union tag entry */ G__get_linked_tagnum(&G__MyClass_DictLN_TClass); G__get_linked_tagnum(&G__MyClass_DictLN_TBuffer); G__get_linked_tagnum(&G__MyClass_DictLN_TMemberInspector); G__get_linked_tagnum(&G__MyClass_DictLN_TObject); G__get_linked_tagnum(&G__MyClass_DictLN_TList); G__get_linked_tagnum(&G__MyClass_DictLN_TRef); G__get_linked_tagnum(&G__MyClass_DictLN_TVector3); G__get_linked_tagnum(&G__MyClass_DictLN_TClonesArray); G__tagtable_setup(G__get_linked_tagnum(&G__MyClass_DictLN_MyClass),sizeof(MyClass),-1,29952,"MyClass is great",G__setup_memvarMyClass,G__setup_memfuncMyClass); } extern "C" void G__cpp_setupMyClass_Dict(void) { G__check_setup_version(30051515,"G__cpp_setupMyClass_Dict()"); G__set_cpp_environmentMyClass_Dict(); G__cpp_setup_tagtableMyClass_Dict(); G__cpp_setup_inheritanceMyClass_Dict(); G__cpp_setup_typetableMyClass_Dict(); G__cpp_setup_memvarMyClass_Dict(); G__cpp_setup_memfuncMyClass_Dict(); G__cpp_setup_globalMyClass_Dict(); G__cpp_setup_funcMyClass_Dict(); if(0==G__getsizep2memfunc()) G__get_sizep2memfuncMyClass_Dict(); return; } class G__cpp_setup_initMyClass_Dict { public: G__cpp_setup_initMyClass_Dict() { G__add_setup_func("MyClass_Dict",(G__incsetup)(&G__cpp_setupMyClass_Dict)); G__call_setup_funcs(); } ~G__cpp_setup_initMyClass_Dict() { G__remove_setup_func("MyClass_Dict"); } }; G__cpp_setup_initMyClass_Dict G__cpp_setup_initializerMyClass_Dict; /******************************************************************** * MyClass_Dict.h ********************************************************************/ #ifdef __CINT__ #error MyClass_Dict.h/C is only for compilation. Abort cint. #endif #include <stddef.h> #include <stdio.h> #include <stdlib.h> #include <math.h> #include <string.h> #define G__ANSIHEADER #define G__DICTIONARY #include "G__ci.h" extern "C" { extern void G__cpp_setup_tagtableMyClass_Dict(); extern void G__cpp_setup_inheritanceMyClass_Dict(); extern void G__cpp_setup_typetableMyClass_Dict(); extern void G__cpp_setup_memvarMyClass_Dict(); extern void G__cpp_setup_globalMyClass_Dict(); extern void G__cpp_setup_memfuncMyClass_Dict(); extern void G__cpp_setup_funcMyClass_Dict(); extern void G__set_cpp_environmentMyClass_Dict(); } #include "TROOT.h" #include "TMemberInspector.h" #include "MyClass.h" #ifndef G__MEMFUNCBODY #endif extern G__linked_taginfo G__MyClass_DictLN_TClass; extern G__linked_taginfo G__MyClass_DictLN_TBuffer; extern G__linked_taginfo G__MyClass_DictLN_TMemberInspector; extern G__linked_taginfo G__MyClass_DictLN_TObject; extern G__linked_taginfo G__MyClass_DictLN_TList; extern G__linked_taginfo G__MyClass_DictLN_TRef; extern G__linked_taginfo G__MyClass_DictLN_TVector3; extern G__linked_taginfo G__MyClass_DictLN_TClonesArray; extern G__linked_taginfo G__MyClass_DictLN_MyClass; /* STUB derived class for protected member access */
This archive was generated by hypermail 2b29 : Thu Jan 01 2004 - 17:50:16 MET