コード例 #1
0
        void ParseMain(MainItemTag tag, uint value)
        {
            LocalIndexes indexes = null;

            switch (tag)
            {
            case MainItemTag.Collection:
                ReportCollection collection = new ReportCollection();
                collection.Parent = CurrentCollection;
                collection.Type   = (CollectionType)value;
                CurrentCollection = collection;
                indexes           = collection.Indexes; break;

            case MainItemTag.EndCollection:
                CurrentCollection = CurrentCollection.Parent; break;

            case MainItemTag.Input:
            case MainItemTag.Output:
            case MainItemTag.Feature:
                ParseDataMain(tag, value, out indexes); break;
            }

            if (indexes != null)
            {
                ParseMainIndexes(indexes);
            }
        }
コード例 #2
0
 /// <summary>
 /// Initializes a new instance of the <see cref="ReportDescriptorParser"/> class.
 /// </summary>
 public ReportDescriptorParser()
 {
     RootCollection       = new ReportCollection();
     GlobalItemStateStack = new List <IDictionary <GlobalItemTag, EncodedItem> >();
     LocalItemState       = new List <KeyValuePair <LocalItemTag, uint> >();
     Reports = new List <Report>();
     Clear();
 }