/// <summary> /// writes the translation to the binary writer /// </summary> public void Write(ExtendedBinaryWriter writer, int peptideIndex) { CodingRegion.Write(writer); ProteinId.Write(writer); writer.Write(ProteinVersion); writer.WriteOpt(peptideIndex); }
/// <summary> /// writes the regulatory element data to the binary writer /// </summary> public void Write(ExtendedBinaryWriter writer) { writer.Write(ReferenceIndex); writer.WriteOpt(Start); writer.WriteOpt(End); writer.Write((byte)Type); Id.Write(writer); }
/// <summary> /// writes the transcript to the binary writer /// </summary> public void Write(ExtendedBinaryWriter writer, Dictionary <Gene, int> geneIndices, Dictionary <SimpleInterval, int> intronIndices, Dictionary <SimpleInterval, int> microRnaIndices, Dictionary <string, int> peptideIndices) { // transcript writer.Write(ReferenceIndex); writer.WriteOpt(Start); writer.WriteOpt(End); Id.Write(writer); // gene writer.WriteOpt(GetIndex(Gene, geneIndices)); // encoded data var encoded = new EncodedTranscriptData(BioType, Version, TranscriptSource, IsCanonical, SiftIndex != -1, PolyPhenIndex != -1, MicroRnas != null, Introns != null, CdnaMaps != null, Translation != null, StartExonPhase); encoded.Write(writer); // exons & introns if (encoded.HasIntrons) { WriteIndices(writer, Introns, intronIndices); } if (encoded.HasCdnaMaps) { WriteCdnaMaps(writer); } // protein function predictions if (encoded.HasSift) { writer.WriteOpt(SiftIndex); } if (encoded.HasPolyPhen) { writer.WriteOpt(PolyPhenIndex); } // translation if (encoded.HasTranslation) { // ReSharper disable once PossibleNullReferenceException var peptideIndex = GetIndex(Translation.PeptideSeq, peptideIndices); Translation.Write(writer, peptideIndex); } // attributes if (encoded.HasMirnas) { WriteIndices(writer, MicroRnas, microRnaIndices); } }
/// <summary> /// writes the gene data to the binary writer /// </summary> public void Write(ExtendedBinaryWriter writer) { writer.Write(ReferenceIndex); writer.WriteOpt(Start); writer.WriteOpt(End); writer.Write(OnReverseStrand); writer.WriteOptAscii(Symbol); writer.WriteOpt(_hgncId); // ReSharper disable ImpureMethodCallOnReadonlyValueField EntrezGeneId.Write(writer); EnsemblId.Write(writer); // ReSharper restore ImpureMethodCallOnReadonlyValueField writer.WriteOpt(_mimNumber); }