/// <summary> /// Create the classes for dealing with a simple leaf. There a bunch of different things that /// could be stored in here: /// 1) Simple itmes like "int" or "float" /// 2) Arrays, like int[10], int[nTracks] /// 3) vector[int], TLorentzVector (unsplit) - objects that ROOT both knows about and also /// are not split. /// 4) unsplit, unknown objects whose structure is defined by a Streamer. /// /// Sorting out which situation is non-trival, unfortunate. /// 1) There is the item type (leaf.TypeName). This could be "int" or "vector-blah-blah" /// 2) In the title there may be a "[stuff]" whihc means if it was "int" it becomes "int[]". :-) /// This is for dealing with a c-style array. /// </summary> /// <param name="leaf"></param> /// <returns></returns> private IClassItem ExtractUnsplitKnownClass(ROOTNET.Interface.NTLeaf leaf) { return(ExtractSimpleItem(new SimpleLeafInfo(leaf))); }
public SimpleLeafInfo(ROOTNET.Interface.NTLeaf leaf) { Name = leaf.Name; Title = leaf.Title; TypeName = leaf.TypeName; }