예제 #1
0
 public GeneDatabaseWriter(Stream stream, ISupplementaryAnnotationHeader header, bool leaveOpen = false)
 {
     _leaveOpen = leaveOpen;
     _stream    = stream;
     _writer    = new ExtendedBinaryWriter(stream, new UTF8Encoding(false, true), _leaveOpen);
     WriteHeader(header);
 }
예제 #2
0
        private void WriteHeader(ISupplementaryAnnotationHeader header)
        {
            _writer.Write(SaDataBaseCommon.DataHeader);
            _writer.Write(SaDataBaseCommon.DataVersion);
            _writer.Write(SaDataBaseCommon.SchemaVersion);
            _writer.Write((byte)header.GenomeAssembly);
            _writer.Write(DateTime.Now.Ticks);

            var dataSourceVersions = header.DataSourceVersions.ToList();

            _writer.WriteOpt(dataSourceVersions.Count);
            foreach (var version in dataSourceVersions)
            {
                version.Write(_writer);
            }
            _writer.Write(SaDataBaseCommon.GuardInt);
        }
예제 #3
0
 private static SaWriter GetSaWriter(string saPath, ISupplementaryAnnotationHeader header,
                                     List <ISupplementaryInterval> smallVariantIntervals, List <ISupplementaryInterval> svIntervals,
                                     List <ISupplementaryInterval> allVariantIntervals, List <(int, string)> globalMajorAlleleInRefMinors)