gSystem->Now() and TTime in Branches

Hello, I am trying to use gSystem->Now() which returns a TTime. I wish to store the TTime in a TTree branch.

I am branching as such:

  TTime theTime = gSystem->Now();
  outtree->Branch("AnalysisTime",&theTime);

But when I look at the TTree produced, I have a superfluous branch:

>>> t.Show(0)
======> EVENT:0
 AnalysisTime    = (TTime*)0xc67caf0
 fMilliSec       = 560259870828

In PyROOT, if I GetEntry() and access the branch called AnalysisTime it is indeed holding TTime, but fMilliSec is also reported as being a TTime. Their .AsString() methods however return very different values.

Any idea what is going on? I wanted to use TTime because TDateTime does not make it easy to generate a simple timestamp suitable for use in a filename, and because I don’t need faked nanosecond precision, but more than integer second precision. I’ll probably end up using TDateTime and forcing the various bits to be what I want, but it would have been nice to use an existing ROOT object instead of storing just a number.