1// Copyright 2016 Google Inc. 2// 3// Licensed under the Apache License, Version 2.0 (the "License"); 4// you may not use this file except in compliance with the License. 5// You may obtain a copy of the License at 6// 7// http://www.apache.org/licenses/LICENSE-2.0 8// 9// Unless required by applicable law or agreed to in writing, software 10// distributed under the License is distributed on an "AS IS" BASIS, 11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12// See the License for the specific language governing permissions and 13// limitations under the License. 14 15// Code generated by protoc-gen-go. DO NOT EDIT. 16// versions: 17// protoc-gen-go v1.26.0 18// protoc v3.12.2 19// source: google/genomics/v1/readalignment.proto 20 21package genomics 22 23import ( 24 reflect "reflect" 25 sync "sync" 26 27 _ "google.golang.org/genproto/googleapis/api/annotations" 28 protoreflect "google.golang.org/protobuf/reflect/protoreflect" 29 protoimpl "google.golang.org/protobuf/runtime/protoimpl" 30 structpb "google.golang.org/protobuf/types/known/structpb" 31) 32 33const ( 34 // Verify that this generated code is sufficiently up-to-date. 35 _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) 36 // Verify that runtime/protoimpl is sufficiently up-to-date. 37 _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) 38) 39 40// A linear alignment can be represented by one CIGAR string. Describes the 41// mapped position and local alignment of the read to the reference. 42type LinearAlignment struct { 43 state protoimpl.MessageState 44 sizeCache protoimpl.SizeCache 45 unknownFields protoimpl.UnknownFields 46 47 // The position of this alignment. 48 Position *Position `protobuf:"bytes,1,opt,name=position,proto3" json:"position,omitempty"` 49 // The mapping quality of this alignment. Represents how likely 50 // the read maps to this position as opposed to other locations. 51 // 52 // Specifically, this is -10 log10 Pr(mapping position is wrong), rounded to 53 // the nearest integer. 54 MappingQuality int32 `protobuf:"varint,2,opt,name=mapping_quality,json=mappingQuality,proto3" json:"mapping_quality,omitempty"` 55 // Represents the local alignment of this sequence (alignment matches, indels, 56 // etc) against the reference. 57 Cigar []*CigarUnit `protobuf:"bytes,3,rep,name=cigar,proto3" json:"cigar,omitempty"` 58} 59 60func (x *LinearAlignment) Reset() { 61 *x = LinearAlignment{} 62 if protoimpl.UnsafeEnabled { 63 mi := &file_google_genomics_v1_readalignment_proto_msgTypes[0] 64 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 65 ms.StoreMessageInfo(mi) 66 } 67} 68 69func (x *LinearAlignment) String() string { 70 return protoimpl.X.MessageStringOf(x) 71} 72 73func (*LinearAlignment) ProtoMessage() {} 74 75func (x *LinearAlignment) ProtoReflect() protoreflect.Message { 76 mi := &file_google_genomics_v1_readalignment_proto_msgTypes[0] 77 if protoimpl.UnsafeEnabled && x != nil { 78 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 79 if ms.LoadMessageInfo() == nil { 80 ms.StoreMessageInfo(mi) 81 } 82 return ms 83 } 84 return mi.MessageOf(x) 85} 86 87// Deprecated: Use LinearAlignment.ProtoReflect.Descriptor instead. 88func (*LinearAlignment) Descriptor() ([]byte, []int) { 89 return file_google_genomics_v1_readalignment_proto_rawDescGZIP(), []int{0} 90} 91 92func (x *LinearAlignment) GetPosition() *Position { 93 if x != nil { 94 return x.Position 95 } 96 return nil 97} 98 99func (x *LinearAlignment) GetMappingQuality() int32 { 100 if x != nil { 101 return x.MappingQuality 102 } 103 return 0 104} 105 106func (x *LinearAlignment) GetCigar() []*CigarUnit { 107 if x != nil { 108 return x.Cigar 109 } 110 return nil 111} 112 113// A read alignment describes a linear alignment of a string of DNA to a 114// [reference sequence][google.genomics.v1.Reference], in addition to metadata 115// about the fragment (the molecule of DNA sequenced) and the read (the bases 116// which were read by the sequencer). A read is equivalent to a line in a SAM 117// file. A read belongs to exactly one read group and exactly one 118// [read group set][google.genomics.v1.ReadGroupSet]. 119// 120// For more genomics resource definitions, see [Fundamentals of Google 121// Genomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics) 122// 123// ### Reverse-stranded reads 124// 125// Mapped reads (reads having a non-null `alignment`) can be aligned to either 126// the forward or the reverse strand of their associated reference. Strandedness 127// of a mapped read is encoded by `alignment.position.reverseStrand`. 128// 129// If we consider the reference to be a forward-stranded coordinate space of 130// `[0, reference.length)` with `0` as the left-most position and 131// `reference.length` as the right-most position, reads are always aligned left 132// to right. That is, `alignment.position.position` always refers to the 133// left-most reference coordinate and `alignment.cigar` describes the alignment 134// of this read to the reference from left to right. All per-base fields such as 135// `alignedSequence` and `alignedQuality` share this same left-to-right 136// orientation; this is true of reads which are aligned to either strand. For 137// reverse-stranded reads, this means that `alignedSequence` is the reverse 138// complement of the bases that were originally reported by the sequencing 139// machine. 140// 141// ### Generating a reference-aligned sequence string 142// 143// When interacting with mapped reads, it's often useful to produce a string 144// representing the local alignment of the read to reference. The following 145// pseudocode demonstrates one way of doing this: 146// 147// out = "" 148// offset = 0 149// for c in read.alignment.cigar { 150// switch c.operation { 151// case "ALIGNMENT_MATCH", "SEQUENCE_MATCH", "SEQUENCE_MISMATCH": 152// out += read.alignedSequence[offset:offset+c.operationLength] 153// offset += c.operationLength 154// break 155// case "CLIP_SOFT", "INSERT": 156// offset += c.operationLength 157// break 158// case "PAD": 159// out += repeat("*", c.operationLength) 160// break 161// case "DELETE": 162// out += repeat("-", c.operationLength) 163// break 164// case "SKIP": 165// out += repeat(" ", c.operationLength) 166// break 167// case "CLIP_HARD": 168// break 169// } 170// } 171// return out 172// 173// ### Converting to SAM's CIGAR string 174// 175// The following pseudocode generates a SAM CIGAR string from the 176// `cigar` field. Note that this is a lossy conversion 177// (`cigar.referenceSequence` is lost). 178// 179// cigarMap = { 180// "ALIGNMENT_MATCH": "M", 181// "INSERT": "I", 182// "DELETE": "D", 183// "SKIP": "N", 184// "CLIP_SOFT": "S", 185// "CLIP_HARD": "H", 186// "PAD": "P", 187// "SEQUENCE_MATCH": "=", 188// "SEQUENCE_MISMATCH": "X", 189// } 190// cigarStr = "" 191// for c in read.alignment.cigar { 192// cigarStr += c.operationLength + cigarMap[c.operation] 193// } 194// return cigarStr 195type Read struct { 196 state protoimpl.MessageState 197 sizeCache protoimpl.SizeCache 198 unknownFields protoimpl.UnknownFields 199 200 // The server-generated read ID, unique across all reads. This is different 201 // from the `fragmentName`. 202 Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` 203 // The ID of the read group this read belongs to. A read belongs to exactly 204 // one read group. This is a server-generated ID which is distinct from SAM's 205 // RG tag (for that value, see 206 // [ReadGroup.name][google.genomics.v1.ReadGroup.name]). 207 ReadGroupId string `protobuf:"bytes,2,opt,name=read_group_id,json=readGroupId,proto3" json:"read_group_id,omitempty"` 208 // The ID of the read group set this read belongs to. A read belongs to 209 // exactly one read group set. 210 ReadGroupSetId string `protobuf:"bytes,3,opt,name=read_group_set_id,json=readGroupSetId,proto3" json:"read_group_set_id,omitempty"` 211 // The fragment name. Equivalent to QNAME (query template name) in SAM. 212 FragmentName string `protobuf:"bytes,4,opt,name=fragment_name,json=fragmentName,proto3" json:"fragment_name,omitempty"` 213 // The orientation and the distance between reads from the fragment are 214 // consistent with the sequencing protocol (SAM flag 0x2). 215 ProperPlacement bool `protobuf:"varint,5,opt,name=proper_placement,json=properPlacement,proto3" json:"proper_placement,omitempty"` 216 // The fragment is a PCR or optical duplicate (SAM flag 0x400). 217 DuplicateFragment bool `protobuf:"varint,6,opt,name=duplicate_fragment,json=duplicateFragment,proto3" json:"duplicate_fragment,omitempty"` 218 // The observed length of the fragment, equivalent to TLEN in SAM. 219 FragmentLength int32 `protobuf:"varint,7,opt,name=fragment_length,json=fragmentLength,proto3" json:"fragment_length,omitempty"` 220 // The read number in sequencing. 0-based and less than numberReads. This 221 // field replaces SAM flag 0x40 and 0x80. 222 ReadNumber int32 `protobuf:"varint,8,opt,name=read_number,json=readNumber,proto3" json:"read_number,omitempty"` 223 // The number of reads in the fragment (extension to SAM flag 0x1). 224 NumberReads int32 `protobuf:"varint,9,opt,name=number_reads,json=numberReads,proto3" json:"number_reads,omitempty"` 225 // Whether this read did not pass filters, such as platform or vendor quality 226 // controls (SAM flag 0x200). 227 FailedVendorQualityChecks bool `protobuf:"varint,10,opt,name=failed_vendor_quality_checks,json=failedVendorQualityChecks,proto3" json:"failed_vendor_quality_checks,omitempty"` 228 // The linear alignment for this alignment record. This field is null for 229 // unmapped reads. 230 Alignment *LinearAlignment `protobuf:"bytes,11,opt,name=alignment,proto3" json:"alignment,omitempty"` 231 // Whether this alignment is secondary. Equivalent to SAM flag 0x100. 232 // A secondary alignment represents an alternative to the primary alignment 233 // for this read. Aligners may return secondary alignments if a read can map 234 // ambiguously to multiple coordinates in the genome. By convention, each read 235 // has one and only one alignment where both `secondaryAlignment` 236 // and `supplementaryAlignment` are false. 237 SecondaryAlignment bool `protobuf:"varint,12,opt,name=secondary_alignment,json=secondaryAlignment,proto3" json:"secondary_alignment,omitempty"` 238 // Whether this alignment is supplementary. Equivalent to SAM flag 0x800. 239 // Supplementary alignments are used in the representation of a chimeric 240 // alignment. In a chimeric alignment, a read is split into multiple 241 // linear alignments that map to different reference contigs. The first 242 // linear alignment in the read will be designated as the representative 243 // alignment; the remaining linear alignments will be designated as 244 // supplementary alignments. These alignments may have different mapping 245 // quality scores. In each linear alignment in a chimeric alignment, the read 246 // will be hard clipped. The `alignedSequence` and 247 // `alignedQuality` fields in the alignment record will only 248 // represent the bases for its respective linear alignment. 249 SupplementaryAlignment bool `protobuf:"varint,13,opt,name=supplementary_alignment,json=supplementaryAlignment,proto3" json:"supplementary_alignment,omitempty"` 250 // The bases of the read sequence contained in this alignment record, 251 // **without CIGAR operations applied** (equivalent to SEQ in SAM). 252 // `alignedSequence` and `alignedQuality` may be 253 // shorter than the full read sequence and quality. This will occur if the 254 // alignment is part of a chimeric alignment, or if the read was trimmed. When 255 // this occurs, the CIGAR for this read will begin/end with a hard clip 256 // operator that will indicate the length of the excised sequence. 257 AlignedSequence string `protobuf:"bytes,14,opt,name=aligned_sequence,json=alignedSequence,proto3" json:"aligned_sequence,omitempty"` 258 // The quality of the read sequence contained in this alignment record 259 // (equivalent to QUAL in SAM). 260 // `alignedSequence` and `alignedQuality` may be shorter than the full read 261 // sequence and quality. This will occur if the alignment is part of a 262 // chimeric alignment, or if the read was trimmed. When this occurs, the CIGAR 263 // for this read will begin/end with a hard clip operator that will indicate 264 // the length of the excised sequence. 265 AlignedQuality []int32 `protobuf:"varint,15,rep,packed,name=aligned_quality,json=alignedQuality,proto3" json:"aligned_quality,omitempty"` 266 // The mapping of the primary alignment of the 267 // `(readNumber+1)%numberReads` read in the fragment. It replaces 268 // mate position and mate strand in SAM. 269 NextMatePosition *Position `protobuf:"bytes,16,opt,name=next_mate_position,json=nextMatePosition,proto3" json:"next_mate_position,omitempty"` 270 // A map of additional read alignment information. This must be of the form 271 // map<string, string[]> (string key mapping to a list of string values). 272 Info map[string]*structpb.ListValue `protobuf:"bytes,17,rep,name=info,proto3" json:"info,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` 273} 274 275func (x *Read) Reset() { 276 *x = Read{} 277 if protoimpl.UnsafeEnabled { 278 mi := &file_google_genomics_v1_readalignment_proto_msgTypes[1] 279 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 280 ms.StoreMessageInfo(mi) 281 } 282} 283 284func (x *Read) String() string { 285 return protoimpl.X.MessageStringOf(x) 286} 287 288func (*Read) ProtoMessage() {} 289 290func (x *Read) ProtoReflect() protoreflect.Message { 291 mi := &file_google_genomics_v1_readalignment_proto_msgTypes[1] 292 if protoimpl.UnsafeEnabled && x != nil { 293 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 294 if ms.LoadMessageInfo() == nil { 295 ms.StoreMessageInfo(mi) 296 } 297 return ms 298 } 299 return mi.MessageOf(x) 300} 301 302// Deprecated: Use Read.ProtoReflect.Descriptor instead. 303func (*Read) Descriptor() ([]byte, []int) { 304 return file_google_genomics_v1_readalignment_proto_rawDescGZIP(), []int{1} 305} 306 307func (x *Read) GetId() string { 308 if x != nil { 309 return x.Id 310 } 311 return "" 312} 313 314func (x *Read) GetReadGroupId() string { 315 if x != nil { 316 return x.ReadGroupId 317 } 318 return "" 319} 320 321func (x *Read) GetReadGroupSetId() string { 322 if x != nil { 323 return x.ReadGroupSetId 324 } 325 return "" 326} 327 328func (x *Read) GetFragmentName() string { 329 if x != nil { 330 return x.FragmentName 331 } 332 return "" 333} 334 335func (x *Read) GetProperPlacement() bool { 336 if x != nil { 337 return x.ProperPlacement 338 } 339 return false 340} 341 342func (x *Read) GetDuplicateFragment() bool { 343 if x != nil { 344 return x.DuplicateFragment 345 } 346 return false 347} 348 349func (x *Read) GetFragmentLength() int32 { 350 if x != nil { 351 return x.FragmentLength 352 } 353 return 0 354} 355 356func (x *Read) GetReadNumber() int32 { 357 if x != nil { 358 return x.ReadNumber 359 } 360 return 0 361} 362 363func (x *Read) GetNumberReads() int32 { 364 if x != nil { 365 return x.NumberReads 366 } 367 return 0 368} 369 370func (x *Read) GetFailedVendorQualityChecks() bool { 371 if x != nil { 372 return x.FailedVendorQualityChecks 373 } 374 return false 375} 376 377func (x *Read) GetAlignment() *LinearAlignment { 378 if x != nil { 379 return x.Alignment 380 } 381 return nil 382} 383 384func (x *Read) GetSecondaryAlignment() bool { 385 if x != nil { 386 return x.SecondaryAlignment 387 } 388 return false 389} 390 391func (x *Read) GetSupplementaryAlignment() bool { 392 if x != nil { 393 return x.SupplementaryAlignment 394 } 395 return false 396} 397 398func (x *Read) GetAlignedSequence() string { 399 if x != nil { 400 return x.AlignedSequence 401 } 402 return "" 403} 404 405func (x *Read) GetAlignedQuality() []int32 { 406 if x != nil { 407 return x.AlignedQuality 408 } 409 return nil 410} 411 412func (x *Read) GetNextMatePosition() *Position { 413 if x != nil { 414 return x.NextMatePosition 415 } 416 return nil 417} 418 419func (x *Read) GetInfo() map[string]*structpb.ListValue { 420 if x != nil { 421 return x.Info 422 } 423 return nil 424} 425 426var File_google_genomics_v1_readalignment_proto protoreflect.FileDescriptor 427 428var file_google_genomics_v1_readalignment_proto_rawDesc = []byte{ 429 0x0a, 0x26, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x67, 0x65, 0x6e, 0x6f, 0x6d, 0x69, 0x63, 430 0x73, 0x2f, 0x76, 0x31, 0x2f, 0x72, 0x65, 0x61, 0x64, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x6d, 0x65, 431 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x12, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 432 0x2e, 0x67, 0x65, 0x6e, 0x6f, 0x6d, 0x69, 0x63, 0x73, 0x2e, 0x76, 0x31, 0x1a, 0x1c, 0x67, 0x6f, 433 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 434 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 435 0x6c, 0x65, 0x2f, 0x67, 0x65, 0x6e, 0x6f, 0x6d, 0x69, 0x63, 0x73, 0x2f, 0x76, 0x31, 0x2f, 0x63, 436 0x69, 0x67, 0x61, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x21, 0x67, 0x6f, 0x6f, 0x67, 437 0x6c, 0x65, 0x2f, 0x67, 0x65, 0x6e, 0x6f, 0x6d, 0x69, 0x63, 0x73, 0x2f, 0x76, 0x31, 0x2f, 0x70, 438 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x67, 439 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x73, 440 0x74, 0x72, 0x75, 0x63, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xa9, 0x01, 0x0a, 0x0f, 441 0x4c, 0x69, 0x6e, 0x65, 0x61, 0x72, 0x41, 0x6c, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x12, 442 0x38, 0x0a, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 443 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67, 0x65, 0x6e, 0x6f, 0x6d, 444 0x69, 0x63, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 445 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x27, 0x0a, 0x0f, 0x6d, 0x61, 0x70, 446 0x70, 0x69, 0x6e, 0x67, 0x5f, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 447 0x28, 0x05, 0x52, 0x0e, 0x6d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x51, 0x75, 0x61, 0x6c, 0x69, 448 0x74, 0x79, 0x12, 0x33, 0x0a, 0x05, 0x63, 0x69, 0x67, 0x61, 0x72, 0x18, 0x03, 0x20, 0x03, 0x28, 449 0x0b, 0x32, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67, 0x65, 0x6e, 0x6f, 0x6d, 450 0x69, 0x63, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x69, 0x67, 0x61, 0x72, 0x55, 0x6e, 0x69, 0x74, 451 0x52, 0x05, 0x63, 0x69, 0x67, 0x61, 0x72, 0x22, 0xec, 0x06, 0x0a, 0x04, 0x52, 0x65, 0x61, 0x64, 452 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 453 0x12, 0x22, 0x0a, 0x0d, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 454 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x72, 0x65, 0x61, 0x64, 0x47, 0x72, 0x6f, 455 0x75, 0x70, 0x49, 0x64, 0x12, 0x29, 0x0a, 0x11, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x67, 0x72, 0x6f, 456 0x75, 0x70, 0x5f, 0x73, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 457 0x0e, 0x72, 0x65, 0x61, 0x64, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x53, 0x65, 0x74, 0x49, 0x64, 0x12, 458 0x23, 0x0a, 0x0d, 0x66, 0x72, 0x61, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 459 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x66, 0x72, 0x61, 0x67, 0x6d, 0x65, 0x6e, 0x74, 460 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x5f, 0x70, 461 0x6c, 0x61, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 462 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x12, 463 0x2d, 0x0a, 0x12, 0x64, 0x75, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x65, 0x5f, 0x66, 0x72, 0x61, 464 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x64, 0x75, 0x70, 465 0x6c, 0x69, 0x63, 0x61, 0x74, 0x65, 0x46, 0x72, 0x61, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x27, 466 0x0a, 0x0f, 0x66, 0x72, 0x61, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 467 0x68, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x66, 0x72, 0x61, 0x67, 0x6d, 0x65, 0x6e, 468 0x74, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x61, 0x64, 0x5f, 469 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x72, 0x65, 470 0x61, 0x64, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x21, 0x0a, 0x0c, 0x6e, 0x75, 0x6d, 0x62, 471 0x65, 0x72, 0x5f, 0x72, 0x65, 0x61, 0x64, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 472 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x65, 0x61, 0x64, 0x73, 0x12, 0x3f, 0x0a, 0x1c, 0x66, 473 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x5f, 0x71, 0x75, 0x61, 474 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 475 0x08, 0x52, 0x19, 0x66, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x56, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x51, 476 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x12, 0x41, 0x0a, 0x09, 477 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 478 0x23, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67, 0x65, 0x6e, 0x6f, 0x6d, 0x69, 0x63, 479 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x6e, 0x65, 0x61, 0x72, 0x41, 0x6c, 0x69, 0x67, 0x6e, 480 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x09, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x12, 481 0x2f, 0x0a, 0x13, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x5f, 0x61, 0x6c, 0x69, 482 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x73, 0x65, 483 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x41, 0x6c, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 484 0x12, 0x37, 0x0a, 0x17, 0x73, 0x75, 0x70, 0x70, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x72, 485 0x79, 0x5f, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 486 0x08, 0x52, 0x16, 0x73, 0x75, 0x70, 0x70, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x72, 0x79, 487 0x41, 0x6c, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x29, 0x0a, 0x10, 0x61, 0x6c, 0x69, 488 0x67, 0x6e, 0x65, 0x64, 0x5f, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x0e, 0x20, 489 0x01, 0x28, 0x09, 0x52, 0x0f, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x53, 0x65, 0x71, 0x75, 490 0x65, 0x6e, 0x63, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x5f, 491 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0e, 0x61, 492 0x6c, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x4a, 0x0a, 493 0x12, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x6d, 0x61, 0x74, 0x65, 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74, 494 0x69, 0x6f, 0x6e, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 495 0x6c, 0x65, 0x2e, 0x67, 0x65, 0x6e, 0x6f, 0x6d, 0x69, 0x63, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x50, 496 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x10, 0x6e, 0x65, 0x78, 0x74, 0x4d, 0x61, 0x74, 497 0x65, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x36, 0x0a, 0x04, 0x69, 0x6e, 0x66, 498 0x6f, 0x18, 0x11, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 499 0x2e, 0x67, 0x65, 0x6e, 0x6f, 0x6d, 0x69, 0x63, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x61, 500 0x64, 0x2e, 0x49, 0x6e, 0x66, 0x6f, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x69, 0x6e, 0x66, 501 0x6f, 0x1a, 0x53, 0x0a, 0x09, 0x49, 0x6e, 0x66, 0x6f, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 502 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 503 0x12, 0x30, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 504 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 505 0x66, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 506 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x42, 0x6d, 0x0a, 0x16, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 507 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67, 0x65, 0x6e, 0x6f, 0x6d, 0x69, 0x63, 0x73, 0x2e, 0x76, 0x31, 508 0x42, 0x12, 0x52, 0x65, 0x61, 0x64, 0x41, 0x6c, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x50, 509 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x3a, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67, 510 0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x65, 0x6e, 0x70, 0x72, 0x6f, 511 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x67, 0x65, 512 0x6e, 0x6f, 0x6d, 0x69, 0x63, 0x73, 0x2f, 0x76, 0x31, 0x3b, 0x67, 0x65, 0x6e, 0x6f, 0x6d, 0x69, 513 0x63, 0x73, 0xf8, 0x01, 0x01, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, 514} 515 516var ( 517 file_google_genomics_v1_readalignment_proto_rawDescOnce sync.Once 518 file_google_genomics_v1_readalignment_proto_rawDescData = file_google_genomics_v1_readalignment_proto_rawDesc 519) 520 521func file_google_genomics_v1_readalignment_proto_rawDescGZIP() []byte { 522 file_google_genomics_v1_readalignment_proto_rawDescOnce.Do(func() { 523 file_google_genomics_v1_readalignment_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_genomics_v1_readalignment_proto_rawDescData) 524 }) 525 return file_google_genomics_v1_readalignment_proto_rawDescData 526} 527 528var file_google_genomics_v1_readalignment_proto_msgTypes = make([]protoimpl.MessageInfo, 3) 529var file_google_genomics_v1_readalignment_proto_goTypes = []interface{}{ 530 (*LinearAlignment)(nil), // 0: google.genomics.v1.LinearAlignment 531 (*Read)(nil), // 1: google.genomics.v1.Read 532 nil, // 2: google.genomics.v1.Read.InfoEntry 533 (*Position)(nil), // 3: google.genomics.v1.Position 534 (*CigarUnit)(nil), // 4: google.genomics.v1.CigarUnit 535 (*structpb.ListValue)(nil), // 5: google.protobuf.ListValue 536} 537var file_google_genomics_v1_readalignment_proto_depIdxs = []int32{ 538 3, // 0: google.genomics.v1.LinearAlignment.position:type_name -> google.genomics.v1.Position 539 4, // 1: google.genomics.v1.LinearAlignment.cigar:type_name -> google.genomics.v1.CigarUnit 540 0, // 2: google.genomics.v1.Read.alignment:type_name -> google.genomics.v1.LinearAlignment 541 3, // 3: google.genomics.v1.Read.next_mate_position:type_name -> google.genomics.v1.Position 542 2, // 4: google.genomics.v1.Read.info:type_name -> google.genomics.v1.Read.InfoEntry 543 5, // 5: google.genomics.v1.Read.InfoEntry.value:type_name -> google.protobuf.ListValue 544 6, // [6:6] is the sub-list for method output_type 545 6, // [6:6] is the sub-list for method input_type 546 6, // [6:6] is the sub-list for extension type_name 547 6, // [6:6] is the sub-list for extension extendee 548 0, // [0:6] is the sub-list for field type_name 549} 550 551func init() { file_google_genomics_v1_readalignment_proto_init() } 552func file_google_genomics_v1_readalignment_proto_init() { 553 if File_google_genomics_v1_readalignment_proto != nil { 554 return 555 } 556 file_google_genomics_v1_cigar_proto_init() 557 file_google_genomics_v1_position_proto_init() 558 if !protoimpl.UnsafeEnabled { 559 file_google_genomics_v1_readalignment_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { 560 switch v := v.(*LinearAlignment); i { 561 case 0: 562 return &v.state 563 case 1: 564 return &v.sizeCache 565 case 2: 566 return &v.unknownFields 567 default: 568 return nil 569 } 570 } 571 file_google_genomics_v1_readalignment_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { 572 switch v := v.(*Read); i { 573 case 0: 574 return &v.state 575 case 1: 576 return &v.sizeCache 577 case 2: 578 return &v.unknownFields 579 default: 580 return nil 581 } 582 } 583 } 584 type x struct{} 585 out := protoimpl.TypeBuilder{ 586 File: protoimpl.DescBuilder{ 587 GoPackagePath: reflect.TypeOf(x{}).PkgPath(), 588 RawDescriptor: file_google_genomics_v1_readalignment_proto_rawDesc, 589 NumEnums: 0, 590 NumMessages: 3, 591 NumExtensions: 0, 592 NumServices: 0, 593 }, 594 GoTypes: file_google_genomics_v1_readalignment_proto_goTypes, 595 DependencyIndexes: file_google_genomics_v1_readalignment_proto_depIdxs, 596 MessageInfos: file_google_genomics_v1_readalignment_proto_msgTypes, 597 }.Build() 598 File_google_genomics_v1_readalignment_proto = out.File 599 file_google_genomics_v1_readalignment_proto_rawDesc = nil 600 file_google_genomics_v1_readalignment_proto_goTypes = nil 601 file_google_genomics_v1_readalignment_proto_depIdxs = nil 602} 603