示例#1
0
        public SubrecordStructure(Subrecord node, ElementBase[] elementTree, ElementStructure[] elements)
            : base(node)
        {
            this.notininfo = node.notininfo;
            this.size = node.size;
            this.Condition = (!string.IsNullOrEmpty(node.condition))
                                 ? (CondType) Enum.Parse(typeof (CondType), node.condition, true)
                                 : CondType.None;
            this.CondID = node.condid;
            this.CondOperand = node.condvalue;
            this.UseHexEditor = node.usehexeditor;

            this.elementTree = elementTree;
            this.elements = elements;

            this.ContainsConditionals = this.elements.Count(x => x.CondID != 0) > 0;
        }
示例#2
0
 public ElementStructure(ElementStructure src, int optional = 0, int repeat = 0)
     : base(src, optional, repeat)
 {
     this.CondID         = src.CondID;
     this.FormIDType     = src.FormIDType;
     this.flags          = src.flags;
     this.group          = src.group;
     this.hexview        = src.hexview;
     this.hexviewwithdec = src.hexviewwithdec;
     this.multiline      = src.multiline;
     //this.name = src.name;
     this.notininfo = src.notininfo;
     //this.optional = @optional;
     this.options = src.options;
     //this.repeat = repeat;
     this.funcr = src.funcr;
     this.funcw = src.funcw;
     this.type  = src.type;
 }
示例#3
0
 public ElementStructure(ElementStructure src, int optional = 0, int repeat = 0)
     : base(src, optional, repeat)
 {
     this.CondID = src.CondID;
     this.FormIDType = src.FormIDType;
     this.flags = src.flags;
     this.group = src.group;
     this.hexview = src.hexview;
     this.hexviewwithdec = src.hexviewwithdec;
     this.multiline = src.multiline;
     //this.name = src.name;
     this.notininfo = src.notininfo;
     //this.optional = @optional;
     this.options = src.options;
     //this.repeat = repeat;
     this.funcr = src.funcr;
     this.funcw = src.funcw;
     this.type = src.type;
 }