コード例 #1
0
ファイル: SubRecord.cs プロジェクト: ctddjyds/npoi
        public static SubRecord CreateSubRecord(ILittleEndianInput in1, CommonObjectType cmoOt)
        {
            int sid = in1.ReadUShort();
            int secondUShort = in1.ReadUShort(); // Often (but not always) the datasize for the sub-record


            switch (sid)
            {
                case CommonObjectDataSubRecord.sid:
                    return new CommonObjectDataSubRecord(in1, secondUShort);
                case EmbeddedObjectRefSubRecord.sid:
                    return new EmbeddedObjectRefSubRecord(in1, secondUShort);
                case GroupMarkerSubRecord.sid:
                    return new GroupMarkerSubRecord(in1, secondUShort);
                case EndSubRecord.sid:
                    return new EndSubRecord(in1, secondUShort);
                case NoteStructureSubRecord.sid:
                    return new NoteStructureSubRecord(in1, secondUShort);
                case LbsDataSubRecord.sid:
                    return new LbsDataSubRecord(in1, secondUShort, (int)cmoOt);
                case FtCblsSubRecord.sid:
                    return new FtCblsSubRecord(in1, secondUShort);
            }
            return new UnknownSubRecord(in1, sid, secondUShort);
        }
コード例 #2
0
        public static SubRecord CreateSubRecord(ILittleEndianInput in1, CommonObjectType cmoOt)
        {
            int sid          = in1.ReadUShort();
            int secondUShort = in1.ReadUShort(); // Often (but not always) the datasize for the sub-record


            switch (sid)
            {
            case CommonObjectDataSubRecord.sid:
                return(new CommonObjectDataSubRecord(in1, secondUShort));

            case EmbeddedObjectRefSubRecord.sid:
                return(new EmbeddedObjectRefSubRecord(in1, secondUShort));

            case GroupMarkerSubRecord.sid:
                return(new GroupMarkerSubRecord(in1, secondUShort));

            case EndSubRecord.sid:
                return(new EndSubRecord(in1, secondUShort));

            case NoteStructureSubRecord.sid:
                return(new NoteStructureSubRecord(in1, secondUShort));

            case LbsDataSubRecord.sid:
                return(new LbsDataSubRecord(in1, secondUShort, (int)cmoOt));

            case FtCblsSubRecord.sid:
                return(new FtCblsSubRecord(in1, secondUShort));
            }
            return(new UnknownSubRecord(in1, sid, secondUShort));
        }