-
Type:
Bug
-
Status: Closed (View Workflow)
-
Priority:
Blocker
-
Resolution: Clarified
-
Affects Version/s: None
-
Fix Version/s: None
-
Component/s: None
-
Labels:None
-
Environment:
Root master on Ubuntu 14.10, compiled with clang
-
Development:
An AliRoot class contains the following data members:
// data members
mutable TExMap fMap; //!< Transient map class
TObjArray fObjects; ///< Array of objects
TArrayL fKeys; ///< Array of keys
When I write this class, I clearly see that fMap is persistent (using gDebug=2):
StreamerInfo for class: AliMpExMap, version=1, checksum=0x727b088
TObject BASE offset= 0 type=66 Basic ROOT object
TExMap fMap offset= 16 type=61 Transient map class
TObjArray fObjects offset= 48 type=61 Array of objects
TArrayL fKeys offset=112 type=62 Array of keys
i= 0, TObject type= 66, offset= 0, len=1, method=0
i= 1, fMap type= 61, offset= 16, len=1, method=0
i= 2, fObjects type= 61, offset= 48, len=1, method=0
i= 3, fKeys type= 62, offset=112, len=1, method=0
WriteBuffer, class:AliMpExMap, name=TObject, fType[0]=66, TStreamerBase, bufpos=77, arr=0x7fffa4026828, offset=0
WriteBuffer, class:AliMpExMap, name=fMap, fType[0]=61, TStreamerObject, bufpos=87, arr=0x7fffa4026828, offset=16
WriteBuffer, class:AliMpExMap, name=fObjects, fType[0]=61, TStreamerObject, bufpos=671, arr=0x7fffa4026828, offset=48
WriteBuffer, class:AliMpExMap, name=fKeys, fType[0]=62, TStreamerObjectAny, bufpos=1064, arr=0x7fffa4026828, offset=112
TKey Writing 486 bytes at address 228 for ID= AliMpExMap Title= Root persistent TExMap
I-TFile::WriteStreamerInfo: called for file testmpexmap.root
-class: AliMpExMap info number 18 saved
Now I remove the doxygen part of the comment, recompile and rerun
// data members
mutable TExMap fMap; //! Transient map class
TObjArray fObjects; ///< Array of objects
TArrayL fKeys; ///< Array of keys
The fMap is not persistent as it should be also in the first case:
StreamerInfo for class: AliMpExMap, version=1, checksum=0x1be35f37
TObject BASE offset= 0 type=66 Basic ROOT object
TObjArray fObjects offset= 48 type=61 Array of objects
TArrayL fKeys offset=112 type=62 Array of keys
i= 0, TObject type= 66, offset= 0, len=1, method=0
i= 1, fObjects type= 61, offset= 48, len=1, method=0
i= 2, fKeys type= 62, offset=112, len=1, method=0
WriteBuffer, class:AliMpExMap, name=TObject, fType[0]=66, TStreamerBase, bufpos=77, arr=0x7fff5db47fd8, offset=0
WriteBuffer, class:AliMpExMap, name=fObjects, fType[0]=61, TStreamerObject, bufpos=87, arr=0x7fff5db47fd8, offset=48
WriteBuffer, class:AliMpExMap, name=fKeys, fType[0]=62, TStreamerObjectAny, bufpos=480, arr=0x7fff5db47fd8, offset=112
TKey Writing 261 bytes at address 228 for ID= AliMpExMap Title= Root persistent TExMap