Exemple #1
0
        public static IGene Read(IExtendedBinaryReader reader, IDictionary <ushort, IChromosome> indexToChromosome)
        {
            ushort referenceIndex  = reader.ReadOptUInt16();
            int    start           = reader.ReadOptInt32();
            int    end             = reader.ReadOptInt32();
            bool   onReverseStrand = reader.ReadBoolean();
            string symbol          = reader.ReadAsciiString();
            int    hgncId          = reader.ReadOptInt32();
            var    entrezId        = CompactId.Read(reader);
            var    ensemblId       = CompactId.Read(reader);

            return(new Gene(indexToChromosome[referenceIndex], start, end, onReverseStrand, symbol, hgncId, entrezId, ensemblId));
        }
        public static IGeneAnnotationSource Read(IExtendedBinaryReader reader)
        {
            var dataSource       = reader.ReadAsciiString();
            var isArray          = reader.ReadBoolean();
            var jsonStringLength = reader.ReadOptInt32();
            var jsonStrings      = new string[jsonStringLength];

            for (int i = 0; i < jsonStringLength; i++)
            {
                jsonStrings[i] = reader.ReadString();
            }

            return(new GeneAnnotationSource(dataSource, jsonStrings, isArray));
        }