//
// Generated by the protocol buffer compiler. DO NOT EDIT!
// source: gtfs-realtime.proto
//
#pragma warning disable 1591, 0612, 3021, 8981
#region Designer generated code
using pb = global::Google.Protobuf;
using pbc = global::Google.Protobuf.Collections;
using pbr = global::Google.Protobuf.Reflection;
using scg = global::System.Collections.Generic;
namespace TransitRealtime {
/// Holder for reflection information generated from gtfs-realtime.proto
public static partial class GtfsRealtimeReflection {
#region Descriptor
/// File descriptor for gtfs-realtime.proto
public static pbr::FileDescriptor Descriptor {
get { return descriptor; }
}
private static pbr::FileDescriptor descriptor;
static GtfsRealtimeReflection() {
byte[] descriptorData = global::System.Convert.FromBase64String(
string.Concat(
"ChNndGZzLXJlYWx0aW1lLnByb3RvEhB0cmFuc2l0X3JlYWx0aW1lInkKC0Zl",
"ZWRNZXNzYWdlEiwKBmhlYWRlchgBIAIoCzIcLnRyYW5zaXRfcmVhbHRpbWUu",
"RmVlZEhlYWRlchIsCgZlbnRpdHkYAiADKAsyHC50cmFuc2l0X3JlYWx0aW1l",
"LkZlZWRFbnRpdHkqBgjoBxDQDyoGCKhGEJBOIu0BCgpGZWVkSGVhZGVyEh0K",
"FWd0ZnNfcmVhbHRpbWVfdmVyc2lvbhgBIAIoCRJRCg5pbmNyZW1lbnRhbGl0",
"eRgCIAEoDjIrLnRyYW5zaXRfcmVhbHRpbWUuRmVlZEhlYWRlci5JbmNyZW1l",
"bnRhbGl0eToMRlVMTF9EQVRBU0VUEhEKCXRpbWVzdGFtcBgDIAEoBBIUCgxm",
"ZWVkX3ZlcnNpb24YBCABKAkiNAoOSW5jcmVtZW50YWxpdHkSEAoMRlVMTF9E",
"QVRBU0VUEAASEAoMRElGRkVSRU5USUFMEAEqBgjoBxDQDyoGCKhGEJBOIuEC",
"CgpGZWVkRW50aXR5EgoKAmlkGAEgAigJEhkKCmlzX2RlbGV0ZWQYAiABKAg6",
"BWZhbHNlEjEKC3RyaXBfdXBkYXRlGAMgASgLMhwudHJhbnNpdF9yZWFsdGlt",
"ZS5UcmlwVXBkYXRlEjIKB3ZlaGljbGUYBCABKAsyIS50cmFuc2l0X3JlYWx0",
"aW1lLlZlaGljbGVQb3NpdGlvbhImCgVhbGVydBgFIAEoCzIXLnRyYW5zaXRf",
"cmVhbHRpbWUuQWxlcnQSJgoFc2hhcGUYBiABKAsyFy50cmFuc2l0X3JlYWx0",
"aW1lLlNoYXBlEiQKBHN0b3AYByABKAsyFi50cmFuc2l0X3JlYWx0aW1lLlN0",
"b3ASPwoSdHJpcF9tb2RpZmljYXRpb25zGAggASgLMiMudHJhbnNpdF9yZWFs",
"dGltZS5UcmlwTW9kaWZpY2F0aW9ucyoGCOgHENAPKgYIqEYQkE4i9gsKClRy",
"aXBVcGRhdGUSLgoEdHJpcBgBIAIoCzIgLnRyYW5zaXRfcmVhbHRpbWUuVHJp",
"cERlc2NyaXB0b3ISNAoHdmVoaWNsZRgDIAEoCzIjLnRyYW5zaXRfcmVhbHRp",
"bWUuVmVoaWNsZURlc2NyaXB0b3ISRQoQc3RvcF90aW1lX3VwZGF0ZRgCIAMo",
"CzIrLnRyYW5zaXRfcmVhbHRpbWUuVHJpcFVwZGF0ZS5TdG9wVGltZVVwZGF0",
"ZRIRCgl0aW1lc3RhbXAYBCABKAQSDQoFZGVsYXkYBSABKAUSRAoPdHJpcF9w",
"cm9wZXJ0aWVzGAYgASgLMisudHJhbnNpdF9yZWFsdGltZS5UcmlwVXBkYXRl",
"LlRyaXBQcm9wZXJ0aWVzGmkKDVN0b3BUaW1lRXZlbnQSDQoFZGVsYXkYASAB",
"KAUSDAoEdGltZRgCIAEoAxITCgt1bmNlcnRhaW50eRgDIAEoBRIWCg5zY2hl",
"ZHVsZWRfdGltZRgEIAEoAyoGCOgHENAPKgYIqEYQkE4auQcKDlN0b3BUaW1l",
"VXBkYXRlEhUKDXN0b3Bfc2VxdWVuY2UYASABKA0SDwoHc3RvcF9pZBgEIAEo",
"CRI7CgdhcnJpdmFsGAIgASgLMioudHJhbnNpdF9yZWFsdGltZS5UcmlwVXBk",
"YXRlLlN0b3BUaW1lRXZlbnQSPQoJZGVwYXJ0dXJlGAMgASgLMioudHJhbnNp",
"dF9yZWFsdGltZS5UcmlwVXBkYXRlLlN0b3BUaW1lRXZlbnQSVQoaZGVwYXJ0",
"dXJlX29jY3VwYW5jeV9zdGF0dXMYByABKA4yMS50cmFuc2l0X3JlYWx0aW1l",
"LlZlaGljbGVQb3NpdGlvbi5PY2N1cGFuY3lTdGF0dXMSagoVc2NoZWR1bGVf",
"cmVsYXRpb25zaGlwGAUgASgOMkAudHJhbnNpdF9yZWFsdGltZS5UcmlwVXBk",
"YXRlLlN0b3BUaW1lVXBkYXRlLlNjaGVkdWxlUmVsYXRpb25zaGlwOglTQ0hF",
"RFVMRUQSXAoUc3RvcF90aW1lX3Byb3BlcnRpZXMYBiABKAsyPi50cmFuc2l0",
"X3JlYWx0aW1lLlRyaXBVcGRhdGUuU3RvcFRpbWVVcGRhdGUuU3RvcFRpbWVQ",
"cm9wZXJ0aWVzGv8CChJTdG9wVGltZVByb3BlcnRpZXMSGAoQYXNzaWduZWRf",
"c3RvcF9pZBgBIAEoCRIVCg1zdG9wX2hlYWRzaWduGAIgASgJEmUKC3BpY2t1",
"cF90eXBlGAMgASgOMlAudHJhbnNpdF9yZWFsdGltZS5UcmlwVXBkYXRlLlN0",
"b3BUaW1lVXBkYXRlLlN0b3BUaW1lUHJvcGVydGllcy5Ecm9wT2ZmUGlja3Vw",
"VHlwZRJnCg1kcm9wX29mZl90eXBlGAQgASgOMlAudHJhbnNpdF9yZWFsdGlt",
"ZS5UcmlwVXBkYXRlLlN0b3BUaW1lVXBkYXRlLlN0b3BUaW1lUHJvcGVydGll",
"cy5Ecm9wT2ZmUGlja3VwVHlwZSJYChFEcm9wT2ZmUGlja3VwVHlwZRILCgdS",
"RUdVTEFSEAASCAoETk9ORRABEhAKDFBIT05FX0FHRU5DWRACEhoKFkNPT1JE",
"SU5BVEVfV0lUSF9EUklWRVIQAyoGCOgHENAPKgYIqEYQkE4iUAoUU2NoZWR1",
"bGVSZWxhdGlvbnNoaXASDQoJU0NIRURVTEVEEAASCwoHU0tJUFBFRBABEgsK",
"B05PX0RBVEEQAhIPCgtVTlNDSEVEVUxFRBADKgYI6AcQ0A8qBgioRhCQThqb",
"AQoOVHJpcFByb3BlcnRpZXMSDwoHdHJpcF9pZBgBIAEoCRISCgpzdGFydF9k",
"YXRlGAIgASgJEhIKCnN0YXJ0X3RpbWUYAyABKAkSEAoIc2hhcGVfaWQYBCAB",
"KAkSFQoNdHJpcF9oZWFkc2lnbhgFIAEoCRIXCg90cmlwX3Nob3J0X25hbWUY",
"BiABKAkqBgjoBxDQDyoGCKhGEJBOKgYI6AcQ0A8qBgioRhCQTiLfCQoPVmVo",
"aWNsZVBvc2l0aW9uEi4KBHRyaXAYASABKAsyIC50cmFuc2l0X3JlYWx0aW1l",
"LlRyaXBEZXNjcmlwdG9yEjQKB3ZlaGljbGUYCCABKAsyIy50cmFuc2l0X3Jl",
"YWx0aW1lLlZlaGljbGVEZXNjcmlwdG9yEiwKCHBvc2l0aW9uGAIgASgLMhou",
"dHJhbnNpdF9yZWFsdGltZS5Qb3NpdGlvbhIdChVjdXJyZW50X3N0b3Bfc2Vx",
"dWVuY2UYAyABKA0SDwoHc3RvcF9pZBgHIAEoCRJaCg5jdXJyZW50X3N0YXR1",
"cxgEIAEoDjIzLnRyYW5zaXRfcmVhbHRpbWUuVmVoaWNsZVBvc2l0aW9uLlZl",
"aGljbGVTdG9wU3RhdHVzOg1JTl9UUkFOU0lUX1RPEhEKCXRpbWVzdGFtcBgF",
"IAEoBBJLChBjb25nZXN0aW9uX2xldmVsGAYgASgOMjEudHJhbnNpdF9yZWFs",
"dGltZS5WZWhpY2xlUG9zaXRpb24uQ29uZ2VzdGlvbkxldmVsEksKEG9jY3Vw",
"YW5jeV9zdGF0dXMYCSABKA4yMS50cmFuc2l0X3JlYWx0aW1lLlZlaGljbGVQ",
"b3NpdGlvbi5PY2N1cGFuY3lTdGF0dXMSHAoUb2NjdXBhbmN5X3BlcmNlbnRh",
"Z2UYCiABKA0SUQoWbXVsdGlfY2FycmlhZ2VfZGV0YWlscxgLIAMoCzIxLnRy",
"YW5zaXRfcmVhbHRpbWUuVmVoaWNsZVBvc2l0aW9uLkNhcnJpYWdlRGV0YWls",
"cxrZAQoPQ2FycmlhZ2VEZXRhaWxzEgoKAmlkGAEgASgJEg0KBWxhYmVsGAIg",
"ASgJEl4KEG9jY3VwYW5jeV9zdGF0dXMYAyABKA4yMS50cmFuc2l0X3JlYWx0",
"aW1lLlZlaGljbGVQb3NpdGlvbi5PY2N1cGFuY3lTdGF0dXM6EU5PX0RBVEFf",
"QVZBSUxBQkxFEiAKFG9jY3VwYW5jeV9wZXJjZW50YWdlGAQgASgFOgItMRIZ",
"ChFjYXJyaWFnZV9zZXF1ZW5jZRgFIAEoDSoGCOgHENAPKgYIqEYQkE4iRwoR",
"VmVoaWNsZVN0b3BTdGF0dXMSDwoLSU5DT01JTkdfQVQQABIOCgpTVE9QUEVE",
"X0FUEAESEQoNSU5fVFJBTlNJVF9UTxACIn0KD0Nvbmdlc3Rpb25MZXZlbBIc",
"ChhVTktOT1dOX0NPTkdFU1RJT05fTEVWRUwQABIUChBSVU5OSU5HX1NNT09U",
"SExZEAESDwoLU1RPUF9BTkRfR08QAhIOCgpDT05HRVNUSU9OEAMSFQoRU0VW",
"RVJFX0NPTkdFU1RJT04QBCLZAQoPT2NjdXBhbmN5U3RhdHVzEgkKBUVNUFRZ",
"EAASGAoUTUFOWV9TRUFUU19BVkFJTEFCTEUQARIXChNGRVdfU0VBVFNfQVZB",
"SUxBQkxFEAISFgoSU1RBTkRJTkdfUk9PTV9PTkxZEAMSHgoaQ1JVU0hFRF9T",
"VEFORElOR19ST09NX09OTFkQBBIICgRGVUxMEAUSHAoYTk9UX0FDQ0VQVElO",
"R19QQVNTRU5HRVJTEAYSFQoRTk9fREFUQV9BVkFJTEFCTEUQBxIRCg1OT1Rf",
"Qk9BUkRBQkxFEAgqBgjoBxDQDyoGCKhGEJBOIusKCgVBbGVydBIyCg1hY3Rp",
"dmVfcGVyaW9kGAEgAygLMhsudHJhbnNpdF9yZWFsdGltZS5UaW1lUmFuZ2US",
"OQoPaW5mb3JtZWRfZW50aXR5GAUgAygLMiAudHJhbnNpdF9yZWFsdGltZS5F",
"bnRpdHlTZWxlY3RvchI7CgVjYXVzZRgGIAEoDjIdLnRyYW5zaXRfcmVhbHRp",
"bWUuQWxlcnQuQ2F1c2U6DVVOS05PV05fQ0FVU0USPgoGZWZmZWN0GAcgASgO",
"Mh4udHJhbnNpdF9yZWFsdGltZS5BbGVydC5FZmZlY3Q6DlVOS05PV05fRUZG",
"RUNUEi8KA3VybBgIIAEoCzIiLnRyYW5zaXRfcmVhbHRpbWUuVHJhbnNsYXRl",
"ZFN0cmluZxI3CgtoZWFkZXJfdGV4dBgKIAEoCzIiLnRyYW5zaXRfcmVhbHRp",
"bWUuVHJhbnNsYXRlZFN0cmluZxI8ChBkZXNjcmlwdGlvbl90ZXh0GAsgASgL",
"MiIudHJhbnNpdF9yZWFsdGltZS5UcmFuc2xhdGVkU3RyaW5nEjsKD3R0c19o",
"ZWFkZXJfdGV4dBgMIAEoCzIiLnRyYW5zaXRfcmVhbHRpbWUuVHJhbnNsYXRl",
"ZFN0cmluZxJAChR0dHNfZGVzY3JpcHRpb25fdGV4dBgNIAEoCzIiLnRyYW5z",
"aXRfcmVhbHRpbWUuVHJhbnNsYXRlZFN0cmluZxJPCg5zZXZlcml0eV9sZXZl",
"bBgOIAEoDjIlLnRyYW5zaXRfcmVhbHRpbWUuQWxlcnQuU2V2ZXJpdHlMZXZl",
"bDoQVU5LTk9XTl9TRVZFUklUWRIwCgVpbWFnZRgPIAEoCzIhLnRyYW5zaXRf",
"cmVhbHRpbWUuVHJhbnNsYXRlZEltYWdlEkIKFmltYWdlX2FsdGVybmF0aXZl",
"X3RleHQYECABKAsyIi50cmFuc2l0X3JlYWx0aW1lLlRyYW5zbGF0ZWRTdHJp",
"bmcSOAoMY2F1c2VfZGV0YWlsGBEgASgLMiIudHJhbnNpdF9yZWFsdGltZS5U",
"cmFuc2xhdGVkU3RyaW5nEjkKDWVmZmVjdF9kZXRhaWwYEiABKAsyIi50cmFu",
"c2l0X3JlYWx0aW1lLlRyYW5zbGF0ZWRTdHJpbmci2AEKBUNhdXNlEhEKDVVO",
"S05PV05fQ0FVU0UQARIPCgtPVEhFUl9DQVVTRRACEhUKEVRFQ0hOSUNBTF9Q",
"Uk9CTEVNEAMSCgoGU1RSSUtFEAQSEQoNREVNT05TVFJBVElPThAFEgwKCEFD",
"Q0lERU5UEAYSCwoHSE9MSURBWRAHEgsKB1dFQVRIRVIQCBIPCgtNQUlOVEVO",
"QU5DRRAJEhAKDENPTlNUUlVDVElPThAKEhMKD1BPTElDRV9BQ1RJVklUWRAL",
"EhUKEU1FRElDQUxfRU1FUkdFTkNZEAwi3QEKBkVmZmVjdBIOCgpOT19TRVJW",
"SUNFEAESEwoPUkVEVUNFRF9TRVJWSUNFEAISFgoSU0lHTklGSUNBTlRfREVM",
"QVlTEAMSCgoGREVUT1VSEAQSFgoSQURESVRJT05BTF9TRVJWSUNFEAUSFAoQ",
"TU9ESUZJRURfU0VSVklDRRAGEhAKDE9USEVSX0VGRkVDVBAHEhIKDlVOS05P",
"V05fRUZGRUNUEAgSDgoKU1RPUF9NT1ZFRBAJEg0KCU5PX0VGRkVDVBAKEhcK",
"E0FDQ0VTU0lCSUxJVFlfSVNTVUUQCyJICg1TZXZlcml0eUxldmVsEhQKEFVO",
"S05PV05fU0VWRVJJVFkQARIICgRJTkZPEAISCwoHV0FSTklORxADEgoKBlNF",
"VkVSRRAEKgYI6AcQ0A8qBgioRhCQTiI3CglUaW1lUmFuZ2USDQoFc3RhcnQY",
"ASABKAQSCwoDZW5kGAIgASgEKgYI6AcQ0A8qBgioRhCQTiJxCghQb3NpdGlv",
"bhIQCghsYXRpdHVkZRgBIAIoAhIRCglsb25naXR1ZGUYAiACKAISDwoHYmVh",
"cmluZxgDIAEoAhIQCghvZG9tZXRlchgEIAEoARINCgVzcGVlZBgFIAEoAioG",
"COgHENAPKgYIqEYQkE4itwQKDlRyaXBEZXNjcmlwdG9yEg8KB3RyaXBfaWQY",
"ASABKAkSEAoIcm91dGVfaWQYBSABKAkSFAoMZGlyZWN0aW9uX2lkGAYgASgN",
"EhIKCnN0YXJ0X3RpbWUYAiABKAkSEgoKc3RhcnRfZGF0ZRgDIAEoCRJUChVz",
"Y2hlZHVsZV9yZWxhdGlvbnNoaXAYBCABKA4yNS50cmFuc2l0X3JlYWx0aW1l",
"LlRyaXBEZXNjcmlwdG9yLlNjaGVkdWxlUmVsYXRpb25zaGlwEkwKDW1vZGlm",
"aWVkX3RyaXAYByABKAsyNS50cmFuc2l0X3JlYWx0aW1lLlRyaXBEZXNjcmlw",
"dG9yLk1vZGlmaWVkVHJpcFNlbGVjdG9yGoIBChRNb2RpZmllZFRyaXBTZWxl",
"Y3RvchIYChBtb2RpZmljYXRpb25zX2lkGAEgASgJEhgKEGFmZmVjdGVkX3Ry",
"aXBfaWQYAiABKAkSEgoKc3RhcnRfdGltZRgDIAEoCRISCgpzdGFydF9kYXRl",
"GAQgASgJKgYI6AcQ0A8qBgioRhCQTiKKAQoUU2NoZWR1bGVSZWxhdGlvbnNo",
"aXASDQoJU0NIRURVTEVEEAASDQoFQURERUQQARoCCAESDwoLVU5TQ0hFRFVM",
"RUQQAhIMCghDQU5DRUxFRBADEg8KC1JFUExBQ0VNRU5UEAUSDgoKRFVQTElD",
"QVRFRBAGEgsKB0RFTEVURUQQBxIHCgNORVcQCCoGCOgHENAPKgYIqEYQkE4i",
"owIKEVZlaGljbGVEZXNjcmlwdG9yEgoKAmlkGAEgASgJEg0KBWxhYmVsGAIg",
"ASgJEhUKDWxpY2Vuc2VfcGxhdGUYAyABKAkSYQoVd2hlZWxjaGFpcl9hY2Nl",
"c3NpYmxlGAQgASgOMjgudHJhbnNpdF9yZWFsdGltZS5WZWhpY2xlRGVzY3Jp",
"cHRvci5XaGVlbGNoYWlyQWNjZXNzaWJsZToITk9fVkFMVUUiaQoUV2hlZWxj",
"aGFpckFjY2Vzc2libGUSDAoITk9fVkFMVUUQABILCgdVTktOT1dOEAESGQoV",
"V0hFRUxDSEFJUl9BQ0NFU1NJQkxFEAISGwoXV0hFRUxDSEFJUl9JTkFDQ0VT",
"U0lCTEUQAyoGCOgHENAPKgYIqEYQkE4isAEKDkVudGl0eVNlbGVjdG9yEhEK",
"CWFnZW5jeV9pZBgBIAEoCRIQCghyb3V0ZV9pZBgCIAEoCRISCgpyb3V0ZV90",
"eXBlGAMgASgFEi4KBHRyaXAYBCABKAsyIC50cmFuc2l0X3JlYWx0aW1lLlRy",
"aXBEZXNjcmlwdG9yEg8KB3N0b3BfaWQYBSABKAkSFAoMZGlyZWN0aW9uX2lk",
"GAYgASgNKgYI6AcQ0A8qBgioRhCQTiKmAQoQVHJhbnNsYXRlZFN0cmluZxJD",
"Cgt0cmFuc2xhdGlvbhgBIAMoCzIuLnRyYW5zaXRfcmVhbHRpbWUuVHJhbnNs",
"YXRlZFN0cmluZy5UcmFuc2xhdGlvbho9CgtUcmFuc2xhdGlvbhIMCgR0ZXh0",
"GAEgAigJEhAKCGxhbmd1YWdlGAIgASgJKgYI6AcQ0A8qBgioRhCQTioGCOgH",
"ENAPKgYIqEYQkE4iwQEKD1RyYW5zbGF0ZWRJbWFnZRJJCg9sb2NhbGl6ZWRf",
"aW1hZ2UYASADKAsyMC50cmFuc2l0X3JlYWx0aW1lLlRyYW5zbGF0ZWRJbWFn",
"ZS5Mb2NhbGl6ZWRJbWFnZRpTCg5Mb2NhbGl6ZWRJbWFnZRILCgN1cmwYASAC",
"KAkSEgoKbWVkaWFfdHlwZRgCIAIoCRIQCghsYW5ndWFnZRgDIAEoCSoGCOgH",
"ENAPKgYIqEYQkE4qBgjoBxDQDyoGCKhGEJBOIkMKBVNoYXBlEhAKCHNoYXBl",
"X2lkGAEgASgJEhgKEGVuY29kZWRfcG9seWxpbmUYAiABKAkqBgjoBxDQDyoG",
"CKhGEJBOIoQFCgRTdG9wEg8KB3N0b3BfaWQYASABKAkSNQoJc3RvcF9jb2Rl",
"GAIgASgLMiIudHJhbnNpdF9yZWFsdGltZS5UcmFuc2xhdGVkU3RyaW5nEjUK",
"CXN0b3BfbmFtZRgDIAEoCzIiLnRyYW5zaXRfcmVhbHRpbWUuVHJhbnNsYXRl",
"ZFN0cmluZxI5Cg10dHNfc3RvcF9uYW1lGAQgASgLMiIudHJhbnNpdF9yZWFs",
"dGltZS5UcmFuc2xhdGVkU3RyaW5nEjUKCXN0b3BfZGVzYxgFIAEoCzIiLnRy",
"YW5zaXRfcmVhbHRpbWUuVHJhbnNsYXRlZFN0cmluZxIQCghzdG9wX2xhdBgG",
"IAEoAhIQCghzdG9wX2xvbhgHIAEoAhIPCgd6b25lX2lkGAggASgJEjQKCHN0",
"b3BfdXJsGAkgASgLMiIudHJhbnNpdF9yZWFsdGltZS5UcmFuc2xhdGVkU3Ry",
"aW5nEhYKDnBhcmVudF9zdGF0aW9uGAsgASgJEhUKDXN0b3BfdGltZXpvbmUY",
"DCABKAkSTwoTd2hlZWxjaGFpcl9ib2FyZGluZxgNIAEoDjIpLnRyYW5zaXRf",
"cmVhbHRpbWUuU3RvcC5XaGVlbGNoYWlyQm9hcmRpbmc6B1VOS05PV04SEAoI",
"bGV2ZWxfaWQYDiABKAkSOQoNcGxhdGZvcm1fY29kZRgPIAEoCzIiLnRyYW5z",
"aXRfcmVhbHRpbWUuVHJhbnNsYXRlZFN0cmluZyJDChJXaGVlbGNoYWlyQm9h",
"cmRpbmcSCwoHVU5LTk9XThAAEg0KCUFWQUlMQUJMRRABEhEKDU5PVF9BVkFJ",
"TEFCTEUQAioGCOgHENAPKgYIqEYQkE4i3wQKEVRyaXBNb2RpZmljYXRpb25z",
"EkkKDnNlbGVjdGVkX3RyaXBzGAEgAygLMjEudHJhbnNpdF9yZWFsdGltZS5U",
"cmlwTW9kaWZpY2F0aW9ucy5TZWxlY3RlZFRyaXBzEhMKC3N0YXJ0X3RpbWVz",
"GAIgAygJEhUKDXNlcnZpY2VfZGF0ZXMYAyADKAkSRwoNbW9kaWZpY2F0aW9u",
"cxgEIAMoCzIwLnRyYW5zaXRfcmVhbHRpbWUuVHJpcE1vZGlmaWNhdGlvbnMu",
"TW9kaWZpY2F0aW9uGrQCCgxNb2RpZmljYXRpb24SOwoTc3RhcnRfc3RvcF9z",
"ZWxlY3RvchgBIAEoCzIeLnRyYW5zaXRfcmVhbHRpbWUuU3RvcFNlbGVjdG9y",
"EjkKEWVuZF9zdG9wX3NlbGVjdG9yGAIgASgLMh4udHJhbnNpdF9yZWFsdGlt",
"ZS5TdG9wU2VsZWN0b3ISKAodcHJvcGFnYXRlZF9tb2RpZmljYXRpb25fZGVs",
"YXkYAyABKAU6ATASPAoRcmVwbGFjZW1lbnRfc3RvcHMYBCADKAsyIS50cmFu",
"c2l0X3JlYWx0aW1lLlJlcGxhY2VtZW50U3RvcBIYChBzZXJ2aWNlX2FsZXJ0",
"X2lkGAUgASgJEhoKEmxhc3RfbW9kaWZpZWRfdGltZRgGIAEoBCoGCOgHENAP",
"KgYIqEYQkE4aQwoNU2VsZWN0ZWRUcmlwcxIQCgh0cmlwX2lkcxgBIAMoCRIQ",
"CghzaGFwZV9pZBgCIAEoCSoGCOgHENAPKgYIqEYQkE4qBgjoBxDQDyoGCKhG",
"EJBOIkYKDFN0b3BTZWxlY3RvchIVCg1zdG9wX3NlcXVlbmNlGAEgASgNEg8K",
"B3N0b3BfaWQYAiABKAkqBgjoBxDQDyoGCKhGEJBOIk8KD1JlcGxhY2VtZW50",
"U3RvcBIbChN0cmF2ZWxfdGltZV90b19zdG9wGAEgASgFEg8KB3N0b3BfaWQY",
"AiABKAkqBgjoBxDQDyoGCKhGEJBOQh0KG2NvbS5nb29nbGUudHJhbnNpdC5y",
"ZWFsdGltZQ=="));
descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
new pbr::FileDescriptor[] { },
new pbr::GeneratedClrTypeInfo(null, null, new pbr::GeneratedClrTypeInfo[] {
new pbr::GeneratedClrTypeInfo(typeof(global::TransitRealtime.FeedMessage), global::TransitRealtime.FeedMessage.Parser, new[]{ "Header", "Entity" }, null, null, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::TransitRealtime.FeedHeader), global::TransitRealtime.FeedHeader.Parser, new[]{ "GtfsRealtimeVersion", "Incrementality", "Timestamp", "FeedVersion" }, null, new[]{ typeof(global::TransitRealtime.FeedHeader.Types.Incrementality) }, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::TransitRealtime.FeedEntity), global::TransitRealtime.FeedEntity.Parser, new[]{ "Id", "IsDeleted", "TripUpdate", "Vehicle", "Alert", "Shape", "Stop", "TripModifications" }, null, null, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::TransitRealtime.TripUpdate), global::TransitRealtime.TripUpdate.Parser, new[]{ "Trip", "Vehicle", "StopTimeUpdate", "Timestamp", "Delay", "TripProperties" }, null, null, null, new pbr::GeneratedClrTypeInfo[] { new pbr::GeneratedClrTypeInfo(typeof(global::TransitRealtime.TripUpdate.Types.StopTimeEvent), global::TransitRealtime.TripUpdate.Types.StopTimeEvent.Parser, new[]{ "Delay", "Time", "Uncertainty", "ScheduledTime" }, null, null, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::TransitRealtime.TripUpdate.Types.StopTimeUpdate), global::TransitRealtime.TripUpdate.Types.StopTimeUpdate.Parser, new[]{ "StopSequence", "StopId", "Arrival", "Departure", "DepartureOccupancyStatus", "ScheduleRelationship", "StopTimeProperties" }, null, new[]{ typeof(global::TransitRealtime.TripUpdate.Types.StopTimeUpdate.Types.ScheduleRelationship) }, null, new pbr::GeneratedClrTypeInfo[] { new pbr::GeneratedClrTypeInfo(typeof(global::TransitRealtime.TripUpdate.Types.StopTimeUpdate.Types.StopTimeProperties), global::TransitRealtime.TripUpdate.Types.StopTimeUpdate.Types.StopTimeProperties.Parser, new[]{ "AssignedStopId", "StopHeadsign", "PickupType", "DropOffType" }, null, new[]{ typeof(global::TransitRealtime.TripUpdate.Types.StopTimeUpdate.Types.StopTimeProperties.Types.DropOffPickupType) }, null, null)}),
new pbr::GeneratedClrTypeInfo(typeof(global::TransitRealtime.TripUpdate.Types.TripProperties), global::TransitRealtime.TripUpdate.Types.TripProperties.Parser, new[]{ "TripId", "StartDate", "StartTime", "ShapeId", "TripHeadsign", "TripShortName" }, null, null, null, null)}),
new pbr::GeneratedClrTypeInfo(typeof(global::TransitRealtime.VehiclePosition), global::TransitRealtime.VehiclePosition.Parser, new[]{ "Trip", "Vehicle", "Position", "CurrentStopSequence", "StopId", "CurrentStatus", "Timestamp", "CongestionLevel", "OccupancyStatus", "OccupancyPercentage", "MultiCarriageDetails" }, null, new[]{ typeof(global::TransitRealtime.VehiclePosition.Types.VehicleStopStatus), typeof(global::TransitRealtime.VehiclePosition.Types.CongestionLevel), typeof(global::TransitRealtime.VehiclePosition.Types.OccupancyStatus) }, null, new pbr::GeneratedClrTypeInfo[] { new pbr::GeneratedClrTypeInfo(typeof(global::TransitRealtime.VehiclePosition.Types.CarriageDetails), global::TransitRealtime.VehiclePosition.Types.CarriageDetails.Parser, new[]{ "Id", "Label", "OccupancyStatus", "OccupancyPercentage", "CarriageSequence" }, null, null, null, null)}),
new pbr::GeneratedClrTypeInfo(typeof(global::TransitRealtime.Alert), global::TransitRealtime.Alert.Parser, new[]{ "ActivePeriod", "InformedEntity", "Cause", "Effect", "Url", "HeaderText", "DescriptionText", "TtsHeaderText", "TtsDescriptionText", "SeverityLevel", "Image", "ImageAlternativeText", "CauseDetail", "EffectDetail" }, null, new[]{ typeof(global::TransitRealtime.Alert.Types.Cause), typeof(global::TransitRealtime.Alert.Types.Effect), typeof(global::TransitRealtime.Alert.Types.SeverityLevel) }, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::TransitRealtime.TimeRange), global::TransitRealtime.TimeRange.Parser, new[]{ "Start", "End" }, null, null, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::TransitRealtime.Position), global::TransitRealtime.Position.Parser, new[]{ "Latitude", "Longitude", "Bearing", "Odometer", "Speed" }, null, null, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::TransitRealtime.TripDescriptor), global::TransitRealtime.TripDescriptor.Parser, new[]{ "TripId", "RouteId", "DirectionId", "StartTime", "StartDate", "ScheduleRelationship", "ModifiedTrip" }, null, new[]{ typeof(global::TransitRealtime.TripDescriptor.Types.ScheduleRelationship) }, null, new pbr::GeneratedClrTypeInfo[] { new pbr::GeneratedClrTypeInfo(typeof(global::TransitRealtime.TripDescriptor.Types.ModifiedTripSelector), global::TransitRealtime.TripDescriptor.Types.ModifiedTripSelector.Parser, new[]{ "ModificationsId", "AffectedTripId", "StartTime", "StartDate" }, null, null, null, null)}),
new pbr::GeneratedClrTypeInfo(typeof(global::TransitRealtime.VehicleDescriptor), global::TransitRealtime.VehicleDescriptor.Parser, new[]{ "Id", "Label", "LicensePlate", "WheelchairAccessible" }, null, new[]{ typeof(global::TransitRealtime.VehicleDescriptor.Types.WheelchairAccessible) }, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::TransitRealtime.EntitySelector), global::TransitRealtime.EntitySelector.Parser, new[]{ "AgencyId", "RouteId", "RouteType", "Trip", "StopId", "DirectionId" }, null, null, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::TransitRealtime.TranslatedString), global::TransitRealtime.TranslatedString.Parser, new[]{ "Translation" }, null, null, null, new pbr::GeneratedClrTypeInfo[] { new pbr::GeneratedClrTypeInfo(typeof(global::TransitRealtime.TranslatedString.Types.Translation), global::TransitRealtime.TranslatedString.Types.Translation.Parser, new[]{ "Text", "Language" }, null, null, null, null)}),
new pbr::GeneratedClrTypeInfo(typeof(global::TransitRealtime.TranslatedImage), global::TransitRealtime.TranslatedImage.Parser, new[]{ "LocalizedImage" }, null, null, null, new pbr::GeneratedClrTypeInfo[] { new pbr::GeneratedClrTypeInfo(typeof(global::TransitRealtime.TranslatedImage.Types.LocalizedImage), global::TransitRealtime.TranslatedImage.Types.LocalizedImage.Parser, new[]{ "Url", "MediaType", "Language" }, null, null, null, null)}),
new pbr::GeneratedClrTypeInfo(typeof(global::TransitRealtime.Shape), global::TransitRealtime.Shape.Parser, new[]{ "ShapeId", "EncodedPolyline" }, null, null, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::TransitRealtime.Stop), global::TransitRealtime.Stop.Parser, new[]{ "StopId", "StopCode", "StopName", "TtsStopName", "StopDesc", "StopLat", "StopLon", "ZoneId", "StopUrl", "ParentStation", "StopTimezone", "WheelchairBoarding", "LevelId", "PlatformCode" }, null, new[]{ typeof(global::TransitRealtime.Stop.Types.WheelchairBoarding) }, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::TransitRealtime.TripModifications), global::TransitRealtime.TripModifications.Parser, new[]{ "SelectedTrips", "StartTimes", "ServiceDates", "Modifications" }, null, null, null, new pbr::GeneratedClrTypeInfo[] { new pbr::GeneratedClrTypeInfo(typeof(global::TransitRealtime.TripModifications.Types.Modification), global::TransitRealtime.TripModifications.Types.Modification.Parser, new[]{ "StartStopSelector", "EndStopSelector", "PropagatedModificationDelay", "ReplacementStops", "ServiceAlertId", "LastModifiedTime" }, null, null, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::TransitRealtime.TripModifications.Types.SelectedTrips), global::TransitRealtime.TripModifications.Types.SelectedTrips.Parser, new[]{ "TripIds", "ShapeId" }, null, null, null, null)}),
new pbr::GeneratedClrTypeInfo(typeof(global::TransitRealtime.StopSelector), global::TransitRealtime.StopSelector.Parser, new[]{ "StopSequence", "StopId" }, null, null, null, null),
new pbr::GeneratedClrTypeInfo(typeof(global::TransitRealtime.ReplacementStop), global::TransitRealtime.ReplacementStop.Parser, new[]{ "TravelTimeToStop", "StopId" }, null, null, null, null)
}));
}
#endregion
}
#region Messages
///
/// The contents of a feed message.
/// A feed is a continuous stream of feed messages. Each message in the stream is
/// obtained as a response to an appropriate HTTP GET request.
/// A realtime feed is always defined with relation to an existing GTFS feed.
/// All the entity ids are resolved with respect to the GTFS feed.
/// Note that "required" and "optional" as stated in this file refer to Protocol
/// Buffer cardinality, not semantic cardinality. See reference.md at
/// https://github.com/google/transit/tree/master/gtfs-realtime for field
/// semantic cardinality.
///
[global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
public sealed partial class FeedMessage : pb::IExtendableMessage
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
, pb::IBufferMessage
#endif
{
private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new FeedMessage());
private pb::UnknownFieldSet _unknownFields;
private pb::ExtensionSet _extensions;
private pb::ExtensionSet _Extensions { get { return _extensions; } }
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public static pb::MessageParser Parser { get { return _parser; } }
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public static pbr::MessageDescriptor Descriptor {
get { return global::TransitRealtime.GtfsRealtimeReflection.Descriptor.MessageTypes[0]; }
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
pbr::MessageDescriptor pb::IMessage.Descriptor {
get { return Descriptor; }
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public FeedMessage() {
OnConstruction();
}
partial void OnConstruction();
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public FeedMessage(FeedMessage other) : this() {
header_ = other.header_ != null ? other.header_.Clone() : null;
entity_ = other.entity_.Clone();
_unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
_extensions = pb::ExtensionSet.Clone(other._extensions);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public FeedMessage Clone() {
return new FeedMessage(this);
}
/// Field number for the "header" field.
public const int HeaderFieldNumber = 1;
private global::TransitRealtime.FeedHeader header_;
///
/// Metadata about this feed and feed message.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public global::TransitRealtime.FeedHeader Header {
get { return header_; }
set {
header_ = value;
}
}
/// Field number for the "entity" field.
public const int EntityFieldNumber = 2;
private static readonly pb::FieldCodec _repeated_entity_codec
= pb::FieldCodec.ForMessage(18, global::TransitRealtime.FeedEntity.Parser);
private readonly pbc::RepeatedField entity_ = new pbc::RepeatedField();
///
/// Contents of the feed.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public pbc::RepeatedField Entity {
get { return entity_; }
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public override bool Equals(object other) {
return Equals(other as FeedMessage);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool Equals(FeedMessage other) {
if (ReferenceEquals(other, null)) {
return false;
}
if (ReferenceEquals(other, this)) {
return true;
}
if (!object.Equals(Header, other.Header)) return false;
if(!entity_.Equals(other.entity_)) return false;
if (!Equals(_extensions, other._extensions)) {
return false;
}
return Equals(_unknownFields, other._unknownFields);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public override int GetHashCode() {
int hash = 1;
if (header_ != null) hash ^= Header.GetHashCode();
hash ^= entity_.GetHashCode();
if (_extensions != null) {
hash ^= _extensions.GetHashCode();
}
if (_unknownFields != null) {
hash ^= _unknownFields.GetHashCode();
}
return hash;
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public override string ToString() {
return pb::JsonFormatter.ToDiagnosticString(this);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void WriteTo(pb::CodedOutputStream output) {
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
output.WriteRawMessage(this);
#else
if (header_ != null) {
output.WriteRawTag(10);
output.WriteMessage(Header);
}
entity_.WriteTo(output, _repeated_entity_codec);
if (_extensions != null) {
_extensions.WriteTo(output);
}
if (_unknownFields != null) {
_unknownFields.WriteTo(output);
}
#endif
}
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
if (header_ != null) {
output.WriteRawTag(10);
output.WriteMessage(Header);
}
entity_.WriteTo(ref output, _repeated_entity_codec);
if (_extensions != null) {
_extensions.WriteTo(ref output);
}
if (_unknownFields != null) {
_unknownFields.WriteTo(ref output);
}
}
#endif
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public int CalculateSize() {
int size = 0;
if (header_ != null) {
size += 1 + pb::CodedOutputStream.ComputeMessageSize(Header);
}
size += entity_.CalculateSize(_repeated_entity_codec);
if (_extensions != null) {
size += _extensions.CalculateSize();
}
if (_unknownFields != null) {
size += _unknownFields.CalculateSize();
}
return size;
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void MergeFrom(FeedMessage other) {
if (other == null) {
return;
}
if (other.header_ != null) {
if (header_ == null) {
Header = new global::TransitRealtime.FeedHeader();
}
Header.MergeFrom(other.Header);
}
entity_.Add(other.entity_);
pb::ExtensionSet.MergeFrom(ref _extensions, other._extensions);
_unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void MergeFrom(pb::CodedInputStream input) {
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
input.ReadRawMessage(this);
#else
uint tag;
while ((tag = input.ReadTag()) != 0) {
if ((tag & 7) == 4) {
// Abort on any end group tag.
return;
}
switch(tag) {
default:
if (!pb::ExtensionSet.TryMergeFieldFrom(ref _extensions, input)) {
_unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
}
break;
case 10: {
if (header_ == null) {
Header = new global::TransitRealtime.FeedHeader();
}
input.ReadMessage(Header);
break;
}
case 18: {
entity_.AddEntriesFrom(input, _repeated_entity_codec);
break;
}
}
}
#endif
}
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
uint tag;
while ((tag = input.ReadTag()) != 0) {
if ((tag & 7) == 4) {
// Abort on any end group tag.
return;
}
switch(tag) {
default:
if (!pb::ExtensionSet.TryMergeFieldFrom(ref _extensions, ref input)) {
_unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
}
break;
case 10: {
if (header_ == null) {
Header = new global::TransitRealtime.FeedHeader();
}
input.ReadMessage(Header);
break;
}
case 18: {
entity_.AddEntriesFrom(ref input, _repeated_entity_codec);
break;
}
}
}
}
#endif
public TValue GetExtension(pb::Extension extension) {
return pb::ExtensionSet.Get(ref _extensions, extension);
}
public pbc::RepeatedField GetExtension(pb::RepeatedExtension extension) {
return pb::ExtensionSet.Get(ref _extensions, extension);
}
public pbc::RepeatedField GetOrInitializeExtension(pb::RepeatedExtension extension) {
return pb::ExtensionSet.GetOrInitialize(ref _extensions, extension);
}
public void SetExtension(pb::Extension extension, TValue value) {
pb::ExtensionSet.Set(ref _extensions, extension, value);
}
public bool HasExtension(pb::Extension extension) {
return pb::ExtensionSet.Has(ref _extensions, extension);
}
public void ClearExtension(pb::Extension extension) {
pb::ExtensionSet.Clear(ref _extensions, extension);
}
public void ClearExtension(pb::RepeatedExtension extension) {
pb::ExtensionSet.Clear(ref _extensions, extension);
}
}
///
/// Metadata about a feed, included in feed messages.
///
[global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
public sealed partial class FeedHeader : pb::IExtendableMessage
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
, pb::IBufferMessage
#endif
{
private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new FeedHeader());
private pb::UnknownFieldSet _unknownFields;
private pb::ExtensionSet _extensions;
private pb::ExtensionSet _Extensions { get { return _extensions; } }
private int _hasBits0;
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public static pb::MessageParser Parser { get { return _parser; } }
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public static pbr::MessageDescriptor Descriptor {
get { return global::TransitRealtime.GtfsRealtimeReflection.Descriptor.MessageTypes[1]; }
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
pbr::MessageDescriptor pb::IMessage.Descriptor {
get { return Descriptor; }
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public FeedHeader() {
OnConstruction();
}
partial void OnConstruction();
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public FeedHeader(FeedHeader other) : this() {
_hasBits0 = other._hasBits0;
gtfsRealtimeVersion_ = other.gtfsRealtimeVersion_;
incrementality_ = other.incrementality_;
timestamp_ = other.timestamp_;
feedVersion_ = other.feedVersion_;
_unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
_extensions = pb::ExtensionSet.Clone(other._extensions);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public FeedHeader Clone() {
return new FeedHeader(this);
}
/// Field number for the "gtfs_realtime_version" field.
public const int GtfsRealtimeVersionFieldNumber = 1;
private readonly static string GtfsRealtimeVersionDefaultValue = "";
private string gtfsRealtimeVersion_;
///
/// Version of the feed specification.
/// The current version is 2.0. Valid versions are "2.0", "1.0".
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public string GtfsRealtimeVersion {
get { return gtfsRealtimeVersion_ ?? GtfsRealtimeVersionDefaultValue; }
set {
gtfsRealtimeVersion_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
}
}
/// Gets whether the "gtfs_realtime_version" field is set
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool HasGtfsRealtimeVersion {
get { return gtfsRealtimeVersion_ != null; }
}
/// Clears the value of the "gtfs_realtime_version" field
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void ClearGtfsRealtimeVersion() {
gtfsRealtimeVersion_ = null;
}
/// Field number for the "incrementality" field.
public const int IncrementalityFieldNumber = 2;
private readonly static global::TransitRealtime.FeedHeader.Types.Incrementality IncrementalityDefaultValue = global::TransitRealtime.FeedHeader.Types.Incrementality.FullDataset;
private global::TransitRealtime.FeedHeader.Types.Incrementality incrementality_;
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public global::TransitRealtime.FeedHeader.Types.Incrementality Incrementality {
get { if ((_hasBits0 & 1) != 0) { return incrementality_; } else { return IncrementalityDefaultValue; } }
set {
_hasBits0 |= 1;
incrementality_ = value;
}
}
/// Gets whether the "incrementality" field is set
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool HasIncrementality {
get { return (_hasBits0 & 1) != 0; }
}
/// Clears the value of the "incrementality" field
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void ClearIncrementality() {
_hasBits0 &= ~1;
}
/// Field number for the "timestamp" field.
public const int TimestampFieldNumber = 3;
private readonly static ulong TimestampDefaultValue = 0UL;
private ulong timestamp_;
///
/// This timestamp identifies the moment when the content of this feed has been
/// created (in server time). In POSIX time (i.e., number of seconds since
/// January 1st 1970 00:00:00 UTC).
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public ulong Timestamp {
get { if ((_hasBits0 & 2) != 0) { return timestamp_; } else { return TimestampDefaultValue; } }
set {
_hasBits0 |= 2;
timestamp_ = value;
}
}
/// Gets whether the "timestamp" field is set
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool HasTimestamp {
get { return (_hasBits0 & 2) != 0; }
}
/// Clears the value of the "timestamp" field
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void ClearTimestamp() {
_hasBits0 &= ~2;
}
/// Field number for the "feed_version" field.
public const int FeedVersionFieldNumber = 4;
private readonly static string FeedVersionDefaultValue = "";
private string feedVersion_;
///
/// String that matches the feed_info.feed_version from the GTFS feed that the real
/// time data is based on. Consumers can use this to identify which GTFS feed is
/// currently active or when a new one is available to download.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public string FeedVersion {
get { return feedVersion_ ?? FeedVersionDefaultValue; }
set {
feedVersion_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
}
}
/// Gets whether the "feed_version" field is set
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool HasFeedVersion {
get { return feedVersion_ != null; }
}
/// Clears the value of the "feed_version" field
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void ClearFeedVersion() {
feedVersion_ = null;
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public override bool Equals(object other) {
return Equals(other as FeedHeader);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool Equals(FeedHeader other) {
if (ReferenceEquals(other, null)) {
return false;
}
if (ReferenceEquals(other, this)) {
return true;
}
if (GtfsRealtimeVersion != other.GtfsRealtimeVersion) return false;
if (Incrementality != other.Incrementality) return false;
if (Timestamp != other.Timestamp) return false;
if (FeedVersion != other.FeedVersion) return false;
if (!Equals(_extensions, other._extensions)) {
return false;
}
return Equals(_unknownFields, other._unknownFields);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public override int GetHashCode() {
int hash = 1;
if (HasGtfsRealtimeVersion) hash ^= GtfsRealtimeVersion.GetHashCode();
if (HasIncrementality) hash ^= Incrementality.GetHashCode();
if (HasTimestamp) hash ^= Timestamp.GetHashCode();
if (HasFeedVersion) hash ^= FeedVersion.GetHashCode();
if (_extensions != null) {
hash ^= _extensions.GetHashCode();
}
if (_unknownFields != null) {
hash ^= _unknownFields.GetHashCode();
}
return hash;
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public override string ToString() {
return pb::JsonFormatter.ToDiagnosticString(this);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void WriteTo(pb::CodedOutputStream output) {
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
output.WriteRawMessage(this);
#else
if (HasGtfsRealtimeVersion) {
output.WriteRawTag(10);
output.WriteString(GtfsRealtimeVersion);
}
if (HasIncrementality) {
output.WriteRawTag(16);
output.WriteEnum((int) Incrementality);
}
if (HasTimestamp) {
output.WriteRawTag(24);
output.WriteUInt64(Timestamp);
}
if (HasFeedVersion) {
output.WriteRawTag(34);
output.WriteString(FeedVersion);
}
if (_extensions != null) {
_extensions.WriteTo(output);
}
if (_unknownFields != null) {
_unknownFields.WriteTo(output);
}
#endif
}
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
if (HasGtfsRealtimeVersion) {
output.WriteRawTag(10);
output.WriteString(GtfsRealtimeVersion);
}
if (HasIncrementality) {
output.WriteRawTag(16);
output.WriteEnum((int) Incrementality);
}
if (HasTimestamp) {
output.WriteRawTag(24);
output.WriteUInt64(Timestamp);
}
if (HasFeedVersion) {
output.WriteRawTag(34);
output.WriteString(FeedVersion);
}
if (_extensions != null) {
_extensions.WriteTo(ref output);
}
if (_unknownFields != null) {
_unknownFields.WriteTo(ref output);
}
}
#endif
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public int CalculateSize() {
int size = 0;
if (HasGtfsRealtimeVersion) {
size += 1 + pb::CodedOutputStream.ComputeStringSize(GtfsRealtimeVersion);
}
if (HasIncrementality) {
size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) Incrementality);
}
if (HasTimestamp) {
size += 1 + pb::CodedOutputStream.ComputeUInt64Size(Timestamp);
}
if (HasFeedVersion) {
size += 1 + pb::CodedOutputStream.ComputeStringSize(FeedVersion);
}
if (_extensions != null) {
size += _extensions.CalculateSize();
}
if (_unknownFields != null) {
size += _unknownFields.CalculateSize();
}
return size;
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void MergeFrom(FeedHeader other) {
if (other == null) {
return;
}
if (other.HasGtfsRealtimeVersion) {
GtfsRealtimeVersion = other.GtfsRealtimeVersion;
}
if (other.HasIncrementality) {
Incrementality = other.Incrementality;
}
if (other.HasTimestamp) {
Timestamp = other.Timestamp;
}
if (other.HasFeedVersion) {
FeedVersion = other.FeedVersion;
}
pb::ExtensionSet.MergeFrom(ref _extensions, other._extensions);
_unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void MergeFrom(pb::CodedInputStream input) {
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
input.ReadRawMessage(this);
#else
uint tag;
while ((tag = input.ReadTag()) != 0) {
if ((tag & 7) == 4) {
// Abort on any end group tag.
return;
}
switch(tag) {
default:
if (!pb::ExtensionSet.TryMergeFieldFrom(ref _extensions, input)) {
_unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
}
break;
case 10: {
GtfsRealtimeVersion = input.ReadString();
break;
}
case 16: {
Incrementality = (global::TransitRealtime.FeedHeader.Types.Incrementality) input.ReadEnum();
break;
}
case 24: {
Timestamp = input.ReadUInt64();
break;
}
case 34: {
FeedVersion = input.ReadString();
break;
}
}
}
#endif
}
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
uint tag;
while ((tag = input.ReadTag()) != 0) {
if ((tag & 7) == 4) {
// Abort on any end group tag.
return;
}
switch(tag) {
default:
if (!pb::ExtensionSet.TryMergeFieldFrom(ref _extensions, ref input)) {
_unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
}
break;
case 10: {
GtfsRealtimeVersion = input.ReadString();
break;
}
case 16: {
Incrementality = (global::TransitRealtime.FeedHeader.Types.Incrementality) input.ReadEnum();
break;
}
case 24: {
Timestamp = input.ReadUInt64();
break;
}
case 34: {
FeedVersion = input.ReadString();
break;
}
}
}
}
#endif
public TValue GetExtension(pb::Extension extension) {
return pb::ExtensionSet.Get(ref _extensions, extension);
}
public pbc::RepeatedField GetExtension(pb::RepeatedExtension extension) {
return pb::ExtensionSet.Get(ref _extensions, extension);
}
public pbc::RepeatedField GetOrInitializeExtension(pb::RepeatedExtension extension) {
return pb::ExtensionSet.GetOrInitialize(ref _extensions, extension);
}
public void SetExtension(pb::Extension extension, TValue value) {
pb::ExtensionSet.Set(ref _extensions, extension, value);
}
public bool HasExtension(pb::Extension extension) {
return pb::ExtensionSet.Has(ref _extensions, extension);
}
public void ClearExtension(pb::Extension extension) {
pb::ExtensionSet.Clear(ref _extensions, extension);
}
public void ClearExtension(pb::RepeatedExtension extension) {
pb::ExtensionSet.Clear(ref _extensions, extension);
}
#region Nested types
/// Container for nested types declared in the FeedHeader message type.
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public static partial class Types {
///
/// Determines whether the current fetch is incremental. Currently,
/// DIFFERENTIAL mode is unsupported and behavior is unspecified for feeds
/// that use this mode. There are discussions on the GTFS Realtime mailing
/// list around fully specifying the behavior of DIFFERENTIAL mode and the
/// documentation will be updated when those discussions are finalized.
///
public enum Incrementality {
[pbr::OriginalName("FULL_DATASET")] FullDataset = 0,
[pbr::OriginalName("DIFFERENTIAL")] Differential = 1,
}
}
#endregion
}
///
/// A definition (or update) of an entity in the transit feed.
///
[global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
public sealed partial class FeedEntity : pb::IExtendableMessage
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
, pb::IBufferMessage
#endif
{
private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new FeedEntity());
private pb::UnknownFieldSet _unknownFields;
private pb::ExtensionSet _extensions;
private pb::ExtensionSet _Extensions { get { return _extensions; } }
private int _hasBits0;
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public static pb::MessageParser Parser { get { return _parser; } }
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public static pbr::MessageDescriptor Descriptor {
get { return global::TransitRealtime.GtfsRealtimeReflection.Descriptor.MessageTypes[2]; }
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
pbr::MessageDescriptor pb::IMessage.Descriptor {
get { return Descriptor; }
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public FeedEntity() {
OnConstruction();
}
partial void OnConstruction();
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public FeedEntity(FeedEntity other) : this() {
_hasBits0 = other._hasBits0;
id_ = other.id_;
isDeleted_ = other.isDeleted_;
tripUpdate_ = other.tripUpdate_ != null ? other.tripUpdate_.Clone() : null;
vehicle_ = other.vehicle_ != null ? other.vehicle_.Clone() : null;
alert_ = other.alert_ != null ? other.alert_.Clone() : null;
shape_ = other.shape_ != null ? other.shape_.Clone() : null;
stop_ = other.stop_ != null ? other.stop_.Clone() : null;
tripModifications_ = other.tripModifications_ != null ? other.tripModifications_.Clone() : null;
_unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
_extensions = pb::ExtensionSet.Clone(other._extensions);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public FeedEntity Clone() {
return new FeedEntity(this);
}
/// Field number for the "id" field.
public const int IdFieldNumber = 1;
private readonly static string IdDefaultValue = "";
private string id_;
///
/// The ids are used only to provide incrementality support. The id should be
/// unique within a FeedMessage. Consequent FeedMessages may contain
/// FeedEntities with the same id. In case of a DIFFERENTIAL update the new
/// FeedEntity with some id will replace the old FeedEntity with the same id
/// (or delete it - see is_deleted below).
/// The actual GTFS entities (e.g. stations, routes, trips) referenced by the
/// feed must be specified by explicit selectors (see EntitySelector below for
/// more info).
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public string Id {
get { return id_ ?? IdDefaultValue; }
set {
id_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
}
}
/// Gets whether the "id" field is set
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool HasId {
get { return id_ != null; }
}
/// Clears the value of the "id" field
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void ClearId() {
id_ = null;
}
/// Field number for the "is_deleted" field.
public const int IsDeletedFieldNumber = 2;
private readonly static bool IsDeletedDefaultValue = false;
private bool isDeleted_;
///
/// Whether this entity is to be deleted. Relevant only for incremental
/// fetches.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool IsDeleted {
get { if ((_hasBits0 & 1) != 0) { return isDeleted_; } else { return IsDeletedDefaultValue; } }
set {
_hasBits0 |= 1;
isDeleted_ = value;
}
}
/// Gets whether the "is_deleted" field is set
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool HasIsDeleted {
get { return (_hasBits0 & 1) != 0; }
}
/// Clears the value of the "is_deleted" field
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void ClearIsDeleted() {
_hasBits0 &= ~1;
}
/// Field number for the "trip_update" field.
public const int TripUpdateFieldNumber = 3;
private global::TransitRealtime.TripUpdate tripUpdate_;
///
/// Data about the entity itself. Exactly one of the following fields must be
/// present (unless the entity is being deleted).
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public global::TransitRealtime.TripUpdate TripUpdate {
get { return tripUpdate_; }
set {
tripUpdate_ = value;
}
}
/// Field number for the "vehicle" field.
public const int VehicleFieldNumber = 4;
private global::TransitRealtime.VehiclePosition vehicle_;
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public global::TransitRealtime.VehiclePosition Vehicle {
get { return vehicle_; }
set {
vehicle_ = value;
}
}
/// Field number for the "alert" field.
public const int AlertFieldNumber = 5;
private global::TransitRealtime.Alert alert_;
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public global::TransitRealtime.Alert Alert {
get { return alert_; }
set {
alert_ = value;
}
}
/// Field number for the "shape" field.
public const int ShapeFieldNumber = 6;
private global::TransitRealtime.Shape shape_;
///
/// NOTE: This field is still experimental, and subject to change. It may be formally adopted in the future.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public global::TransitRealtime.Shape Shape {
get { return shape_; }
set {
shape_ = value;
}
}
/// Field number for the "stop" field.
public const int StopFieldNumber = 7;
private global::TransitRealtime.Stop stop_;
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public global::TransitRealtime.Stop Stop {
get { return stop_; }
set {
stop_ = value;
}
}
/// Field number for the "trip_modifications" field.
public const int TripModificationsFieldNumber = 8;
private global::TransitRealtime.TripModifications tripModifications_;
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public global::TransitRealtime.TripModifications TripModifications {
get { return tripModifications_; }
set {
tripModifications_ = value;
}
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public override bool Equals(object other) {
return Equals(other as FeedEntity);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool Equals(FeedEntity other) {
if (ReferenceEquals(other, null)) {
return false;
}
if (ReferenceEquals(other, this)) {
return true;
}
if (Id != other.Id) return false;
if (IsDeleted != other.IsDeleted) return false;
if (!object.Equals(TripUpdate, other.TripUpdate)) return false;
if (!object.Equals(Vehicle, other.Vehicle)) return false;
if (!object.Equals(Alert, other.Alert)) return false;
if (!object.Equals(Shape, other.Shape)) return false;
if (!object.Equals(Stop, other.Stop)) return false;
if (!object.Equals(TripModifications, other.TripModifications)) return false;
if (!Equals(_extensions, other._extensions)) {
return false;
}
return Equals(_unknownFields, other._unknownFields);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public override int GetHashCode() {
int hash = 1;
if (HasId) hash ^= Id.GetHashCode();
if (HasIsDeleted) hash ^= IsDeleted.GetHashCode();
if (tripUpdate_ != null) hash ^= TripUpdate.GetHashCode();
if (vehicle_ != null) hash ^= Vehicle.GetHashCode();
if (alert_ != null) hash ^= Alert.GetHashCode();
if (shape_ != null) hash ^= Shape.GetHashCode();
if (stop_ != null) hash ^= Stop.GetHashCode();
if (tripModifications_ != null) hash ^= TripModifications.GetHashCode();
if (_extensions != null) {
hash ^= _extensions.GetHashCode();
}
if (_unknownFields != null) {
hash ^= _unknownFields.GetHashCode();
}
return hash;
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public override string ToString() {
return pb::JsonFormatter.ToDiagnosticString(this);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void WriteTo(pb::CodedOutputStream output) {
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
output.WriteRawMessage(this);
#else
if (HasId) {
output.WriteRawTag(10);
output.WriteString(Id);
}
if (HasIsDeleted) {
output.WriteRawTag(16);
output.WriteBool(IsDeleted);
}
if (tripUpdate_ != null) {
output.WriteRawTag(26);
output.WriteMessage(TripUpdate);
}
if (vehicle_ != null) {
output.WriteRawTag(34);
output.WriteMessage(Vehicle);
}
if (alert_ != null) {
output.WriteRawTag(42);
output.WriteMessage(Alert);
}
if (shape_ != null) {
output.WriteRawTag(50);
output.WriteMessage(Shape);
}
if (stop_ != null) {
output.WriteRawTag(58);
output.WriteMessage(Stop);
}
if (tripModifications_ != null) {
output.WriteRawTag(66);
output.WriteMessage(TripModifications);
}
if (_extensions != null) {
_extensions.WriteTo(output);
}
if (_unknownFields != null) {
_unknownFields.WriteTo(output);
}
#endif
}
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
if (HasId) {
output.WriteRawTag(10);
output.WriteString(Id);
}
if (HasIsDeleted) {
output.WriteRawTag(16);
output.WriteBool(IsDeleted);
}
if (tripUpdate_ != null) {
output.WriteRawTag(26);
output.WriteMessage(TripUpdate);
}
if (vehicle_ != null) {
output.WriteRawTag(34);
output.WriteMessage(Vehicle);
}
if (alert_ != null) {
output.WriteRawTag(42);
output.WriteMessage(Alert);
}
if (shape_ != null) {
output.WriteRawTag(50);
output.WriteMessage(Shape);
}
if (stop_ != null) {
output.WriteRawTag(58);
output.WriteMessage(Stop);
}
if (tripModifications_ != null) {
output.WriteRawTag(66);
output.WriteMessage(TripModifications);
}
if (_extensions != null) {
_extensions.WriteTo(ref output);
}
if (_unknownFields != null) {
_unknownFields.WriteTo(ref output);
}
}
#endif
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public int CalculateSize() {
int size = 0;
if (HasId) {
size += 1 + pb::CodedOutputStream.ComputeStringSize(Id);
}
if (HasIsDeleted) {
size += 1 + 1;
}
if (tripUpdate_ != null) {
size += 1 + pb::CodedOutputStream.ComputeMessageSize(TripUpdate);
}
if (vehicle_ != null) {
size += 1 + pb::CodedOutputStream.ComputeMessageSize(Vehicle);
}
if (alert_ != null) {
size += 1 + pb::CodedOutputStream.ComputeMessageSize(Alert);
}
if (shape_ != null) {
size += 1 + pb::CodedOutputStream.ComputeMessageSize(Shape);
}
if (stop_ != null) {
size += 1 + pb::CodedOutputStream.ComputeMessageSize(Stop);
}
if (tripModifications_ != null) {
size += 1 + pb::CodedOutputStream.ComputeMessageSize(TripModifications);
}
if (_extensions != null) {
size += _extensions.CalculateSize();
}
if (_unknownFields != null) {
size += _unknownFields.CalculateSize();
}
return size;
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void MergeFrom(FeedEntity other) {
if (other == null) {
return;
}
if (other.HasId) {
Id = other.Id;
}
if (other.HasIsDeleted) {
IsDeleted = other.IsDeleted;
}
if (other.tripUpdate_ != null) {
if (tripUpdate_ == null) {
TripUpdate = new global::TransitRealtime.TripUpdate();
}
TripUpdate.MergeFrom(other.TripUpdate);
}
if (other.vehicle_ != null) {
if (vehicle_ == null) {
Vehicle = new global::TransitRealtime.VehiclePosition();
}
Vehicle.MergeFrom(other.Vehicle);
}
if (other.alert_ != null) {
if (alert_ == null) {
Alert = new global::TransitRealtime.Alert();
}
Alert.MergeFrom(other.Alert);
}
if (other.shape_ != null) {
if (shape_ == null) {
Shape = new global::TransitRealtime.Shape();
}
Shape.MergeFrom(other.Shape);
}
if (other.stop_ != null) {
if (stop_ == null) {
Stop = new global::TransitRealtime.Stop();
}
Stop.MergeFrom(other.Stop);
}
if (other.tripModifications_ != null) {
if (tripModifications_ == null) {
TripModifications = new global::TransitRealtime.TripModifications();
}
TripModifications.MergeFrom(other.TripModifications);
}
pb::ExtensionSet.MergeFrom(ref _extensions, other._extensions);
_unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void MergeFrom(pb::CodedInputStream input) {
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
input.ReadRawMessage(this);
#else
uint tag;
while ((tag = input.ReadTag()) != 0) {
if ((tag & 7) == 4) {
// Abort on any end group tag.
return;
}
switch(tag) {
default:
if (!pb::ExtensionSet.TryMergeFieldFrom(ref _extensions, input)) {
_unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
}
break;
case 10: {
Id = input.ReadString();
break;
}
case 16: {
IsDeleted = input.ReadBool();
break;
}
case 26: {
if (tripUpdate_ == null) {
TripUpdate = new global::TransitRealtime.TripUpdate();
}
input.ReadMessage(TripUpdate);
break;
}
case 34: {
if (vehicle_ == null) {
Vehicle = new global::TransitRealtime.VehiclePosition();
}
input.ReadMessage(Vehicle);
break;
}
case 42: {
if (alert_ == null) {
Alert = new global::TransitRealtime.Alert();
}
input.ReadMessage(Alert);
break;
}
case 50: {
if (shape_ == null) {
Shape = new global::TransitRealtime.Shape();
}
input.ReadMessage(Shape);
break;
}
case 58: {
if (stop_ == null) {
Stop = new global::TransitRealtime.Stop();
}
input.ReadMessage(Stop);
break;
}
case 66: {
if (tripModifications_ == null) {
TripModifications = new global::TransitRealtime.TripModifications();
}
input.ReadMessage(TripModifications);
break;
}
}
}
#endif
}
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
uint tag;
while ((tag = input.ReadTag()) != 0) {
if ((tag & 7) == 4) {
// Abort on any end group tag.
return;
}
switch(tag) {
default:
if (!pb::ExtensionSet.TryMergeFieldFrom(ref _extensions, ref input)) {
_unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
}
break;
case 10: {
Id = input.ReadString();
break;
}
case 16: {
IsDeleted = input.ReadBool();
break;
}
case 26: {
if (tripUpdate_ == null) {
TripUpdate = new global::TransitRealtime.TripUpdate();
}
input.ReadMessage(TripUpdate);
break;
}
case 34: {
if (vehicle_ == null) {
Vehicle = new global::TransitRealtime.VehiclePosition();
}
input.ReadMessage(Vehicle);
break;
}
case 42: {
if (alert_ == null) {
Alert = new global::TransitRealtime.Alert();
}
input.ReadMessage(Alert);
break;
}
case 50: {
if (shape_ == null) {
Shape = new global::TransitRealtime.Shape();
}
input.ReadMessage(Shape);
break;
}
case 58: {
if (stop_ == null) {
Stop = new global::TransitRealtime.Stop();
}
input.ReadMessage(Stop);
break;
}
case 66: {
if (tripModifications_ == null) {
TripModifications = new global::TransitRealtime.TripModifications();
}
input.ReadMessage(TripModifications);
break;
}
}
}
}
#endif
public TValue GetExtension(pb::Extension extension) {
return pb::ExtensionSet.Get(ref _extensions, extension);
}
public pbc::RepeatedField GetExtension(pb::RepeatedExtension extension) {
return pb::ExtensionSet.Get(ref _extensions, extension);
}
public pbc::RepeatedField GetOrInitializeExtension(pb::RepeatedExtension extension) {
return pb::ExtensionSet.GetOrInitialize(ref _extensions, extension);
}
public void SetExtension(pb::Extension extension, TValue value) {
pb::ExtensionSet.Set(ref _extensions, extension, value);
}
public bool HasExtension(pb::Extension extension) {
return pb::ExtensionSet.Has(ref _extensions, extension);
}
public void ClearExtension(pb::Extension extension) {
pb::ExtensionSet.Clear(ref _extensions, extension);
}
public void ClearExtension(pb::RepeatedExtension extension) {
pb::ExtensionSet.Clear(ref _extensions, extension);
}
}
///
/// Realtime update of the progress of a vehicle along a trip.
/// Depending on the value of ScheduleRelationship, a TripUpdate can specify:
/// - A trip that proceeds along the schedule.
/// - A trip that proceeds along a route but has no fixed schedule.
/// - A trip that have been added or removed with regard to schedule.
///
/// The updates can be for future, predicted arrival/departure events, or for
/// past events that already occurred.
/// Normally, updates should get more precise and more certain (see
/// uncertainty below) as the events gets closer to current time.
/// Even if that is not possible, the information for past events should be
/// precise and certain. In particular, if an update points to time in the past
/// but its update's uncertainty is not 0, the client should conclude that the
/// update is a (wrong) prediction and that the trip has not completed yet.
///
/// Note that the update can describe a trip that is already completed.
/// To this end, it is enough to provide an update for the last stop of the trip.
/// If the time of that is in the past, the client will conclude from that that
/// the whole trip is in the past (it is possible, although inconsequential, to
/// also provide updates for preceding stops).
/// This option is most relevant for a trip that has completed ahead of schedule,
/// but according to the schedule, the trip is still proceeding at the current
/// time. Removing the updates for this trip could make the client assume
/// that the trip is still proceeding.
/// Note that the feed provider is allowed, but not required, to purge past
/// updates - this is one case where this would be practically useful.
///
[global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
public sealed partial class TripUpdate : pb::IExtendableMessage
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
, pb::IBufferMessage
#endif
{
private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new TripUpdate());
private pb::UnknownFieldSet _unknownFields;
private pb::ExtensionSet _extensions;
private pb::ExtensionSet _Extensions { get { return _extensions; } }
private int _hasBits0;
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public static pb::MessageParser Parser { get { return _parser; } }
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public static pbr::MessageDescriptor Descriptor {
get { return global::TransitRealtime.GtfsRealtimeReflection.Descriptor.MessageTypes[3]; }
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
pbr::MessageDescriptor pb::IMessage.Descriptor {
get { return Descriptor; }
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public TripUpdate() {
OnConstruction();
}
partial void OnConstruction();
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public TripUpdate(TripUpdate other) : this() {
_hasBits0 = other._hasBits0;
trip_ = other.trip_ != null ? other.trip_.Clone() : null;
vehicle_ = other.vehicle_ != null ? other.vehicle_.Clone() : null;
stopTimeUpdate_ = other.stopTimeUpdate_.Clone();
timestamp_ = other.timestamp_;
delay_ = other.delay_;
tripProperties_ = other.tripProperties_ != null ? other.tripProperties_.Clone() : null;
_unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
_extensions = pb::ExtensionSet.Clone(other._extensions);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public TripUpdate Clone() {
return new TripUpdate(this);
}
/// Field number for the "trip" field.
public const int TripFieldNumber = 1;
private global::TransitRealtime.TripDescriptor trip_;
///
/// The Trip that this message applies to. There can be at most one
/// TripUpdate entity for each actual trip instance.
/// If there is none, that means there is no prediction information available.
/// It does *not* mean that the trip is progressing according to schedule.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public global::TransitRealtime.TripDescriptor Trip {
get { return trip_; }
set {
trip_ = value;
}
}
/// Field number for the "vehicle" field.
public const int VehicleFieldNumber = 3;
private global::TransitRealtime.VehicleDescriptor vehicle_;
///
/// Additional information on the vehicle that is serving this trip.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public global::TransitRealtime.VehicleDescriptor Vehicle {
get { return vehicle_; }
set {
vehicle_ = value;
}
}
/// Field number for the "stop_time_update" field.
public const int StopTimeUpdateFieldNumber = 2;
private static readonly pb::FieldCodec _repeated_stopTimeUpdate_codec
= pb::FieldCodec.ForMessage(18, global::TransitRealtime.TripUpdate.Types.StopTimeUpdate.Parser);
private readonly pbc::RepeatedField stopTimeUpdate_ = new pbc::RepeatedField();
///
/// Updates to StopTimes for the trip (both future, i.e., predictions, and in
/// some cases, past ones, i.e., those that already happened).
/// The updates must be sorted by stop_sequence, and apply for all the
/// following stops of the trip up to the next specified one.
///
/// Example 1:
/// For a trip with 20 stops, a StopTimeUpdate with arrival delay and departure
/// delay of 0 for stop_sequence of the current stop means that the trip is
/// exactly on time.
///
/// Example 2:
/// For the same trip instance, 3 StopTimeUpdates are provided:
/// - delay of 5 min for stop_sequence 3
/// - delay of 1 min for stop_sequence 8
/// - delay of unspecified duration for stop_sequence 10
/// This will be interpreted as:
/// - stop_sequences 3,4,5,6,7 have delay of 5 min.
/// - stop_sequences 8,9 have delay of 1 min.
/// - stop_sequences 10,... have unknown delay.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public pbc::RepeatedField StopTimeUpdate {
get { return stopTimeUpdate_; }
}
/// Field number for the "timestamp" field.
public const int TimestampFieldNumber = 4;
private readonly static ulong TimestampDefaultValue = 0UL;
private ulong timestamp_;
///
/// The most recent moment at which the vehicle's real-time progress was measured
/// to estimate StopTimes in the future. When StopTimes in the past are provided,
/// arrival/departure times may be earlier than this value. In POSIX
/// time (i.e., the number of seconds since January 1st 1970 00:00:00 UTC).
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public ulong Timestamp {
get { if ((_hasBits0 & 1) != 0) { return timestamp_; } else { return TimestampDefaultValue; } }
set {
_hasBits0 |= 1;
timestamp_ = value;
}
}
/// Gets whether the "timestamp" field is set
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool HasTimestamp {
get { return (_hasBits0 & 1) != 0; }
}
/// Clears the value of the "timestamp" field
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void ClearTimestamp() {
_hasBits0 &= ~1;
}
/// Field number for the "delay" field.
public const int DelayFieldNumber = 5;
private readonly static int DelayDefaultValue = 0;
private int delay_;
///
/// The current schedule deviation for the trip. Delay should only be
/// specified when the prediction is given relative to some existing schedule
/// in GTFS.
///
/// Delay (in seconds) can be positive (meaning that the vehicle is late) or
/// negative (meaning that the vehicle is ahead of schedule). Delay of 0
/// means that the vehicle is exactly on time.
///
/// Delay information in StopTimeUpdates take precedent of trip-level delay
/// information, such that trip-level delay is only propagated until the next
/// stop along the trip with a StopTimeUpdate delay value specified.
///
/// Feed providers are strongly encouraged to provide a TripUpdate.timestamp
/// value indicating when the delay value was last updated, in order to
/// evaluate the freshness of the data.
///
/// NOTE: This field is still experimental, and subject to change. It may be
/// formally adopted in the future.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public int Delay {
get { if ((_hasBits0 & 2) != 0) { return delay_; } else { return DelayDefaultValue; } }
set {
_hasBits0 |= 2;
delay_ = value;
}
}
/// Gets whether the "delay" field is set
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool HasDelay {
get { return (_hasBits0 & 2) != 0; }
}
/// Clears the value of the "delay" field
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void ClearDelay() {
_hasBits0 &= ~2;
}
/// Field number for the "trip_properties" field.
public const int TripPropertiesFieldNumber = 6;
private global::TransitRealtime.TripUpdate.Types.TripProperties tripProperties_;
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public global::TransitRealtime.TripUpdate.Types.TripProperties TripProperties {
get { return tripProperties_; }
set {
tripProperties_ = value;
}
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public override bool Equals(object other) {
return Equals(other as TripUpdate);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool Equals(TripUpdate other) {
if (ReferenceEquals(other, null)) {
return false;
}
if (ReferenceEquals(other, this)) {
return true;
}
if (!object.Equals(Trip, other.Trip)) return false;
if (!object.Equals(Vehicle, other.Vehicle)) return false;
if(!stopTimeUpdate_.Equals(other.stopTimeUpdate_)) return false;
if (Timestamp != other.Timestamp) return false;
if (Delay != other.Delay) return false;
if (!object.Equals(TripProperties, other.TripProperties)) return false;
if (!Equals(_extensions, other._extensions)) {
return false;
}
return Equals(_unknownFields, other._unknownFields);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public override int GetHashCode() {
int hash = 1;
if (trip_ != null) hash ^= Trip.GetHashCode();
if (vehicle_ != null) hash ^= Vehicle.GetHashCode();
hash ^= stopTimeUpdate_.GetHashCode();
if (HasTimestamp) hash ^= Timestamp.GetHashCode();
if (HasDelay) hash ^= Delay.GetHashCode();
if (tripProperties_ != null) hash ^= TripProperties.GetHashCode();
if (_extensions != null) {
hash ^= _extensions.GetHashCode();
}
if (_unknownFields != null) {
hash ^= _unknownFields.GetHashCode();
}
return hash;
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public override string ToString() {
return pb::JsonFormatter.ToDiagnosticString(this);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void WriteTo(pb::CodedOutputStream output) {
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
output.WriteRawMessage(this);
#else
if (trip_ != null) {
output.WriteRawTag(10);
output.WriteMessage(Trip);
}
stopTimeUpdate_.WriteTo(output, _repeated_stopTimeUpdate_codec);
if (vehicle_ != null) {
output.WriteRawTag(26);
output.WriteMessage(Vehicle);
}
if (HasTimestamp) {
output.WriteRawTag(32);
output.WriteUInt64(Timestamp);
}
if (HasDelay) {
output.WriteRawTag(40);
output.WriteInt32(Delay);
}
if (tripProperties_ != null) {
output.WriteRawTag(50);
output.WriteMessage(TripProperties);
}
if (_extensions != null) {
_extensions.WriteTo(output);
}
if (_unknownFields != null) {
_unknownFields.WriteTo(output);
}
#endif
}
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
if (trip_ != null) {
output.WriteRawTag(10);
output.WriteMessage(Trip);
}
stopTimeUpdate_.WriteTo(ref output, _repeated_stopTimeUpdate_codec);
if (vehicle_ != null) {
output.WriteRawTag(26);
output.WriteMessage(Vehicle);
}
if (HasTimestamp) {
output.WriteRawTag(32);
output.WriteUInt64(Timestamp);
}
if (HasDelay) {
output.WriteRawTag(40);
output.WriteInt32(Delay);
}
if (tripProperties_ != null) {
output.WriteRawTag(50);
output.WriteMessage(TripProperties);
}
if (_extensions != null) {
_extensions.WriteTo(ref output);
}
if (_unknownFields != null) {
_unknownFields.WriteTo(ref output);
}
}
#endif
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public int CalculateSize() {
int size = 0;
if (trip_ != null) {
size += 1 + pb::CodedOutputStream.ComputeMessageSize(Trip);
}
if (vehicle_ != null) {
size += 1 + pb::CodedOutputStream.ComputeMessageSize(Vehicle);
}
size += stopTimeUpdate_.CalculateSize(_repeated_stopTimeUpdate_codec);
if (HasTimestamp) {
size += 1 + pb::CodedOutputStream.ComputeUInt64Size(Timestamp);
}
if (HasDelay) {
size += 1 + pb::CodedOutputStream.ComputeInt32Size(Delay);
}
if (tripProperties_ != null) {
size += 1 + pb::CodedOutputStream.ComputeMessageSize(TripProperties);
}
if (_extensions != null) {
size += _extensions.CalculateSize();
}
if (_unknownFields != null) {
size += _unknownFields.CalculateSize();
}
return size;
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void MergeFrom(TripUpdate other) {
if (other == null) {
return;
}
if (other.trip_ != null) {
if (trip_ == null) {
Trip = new global::TransitRealtime.TripDescriptor();
}
Trip.MergeFrom(other.Trip);
}
if (other.vehicle_ != null) {
if (vehicle_ == null) {
Vehicle = new global::TransitRealtime.VehicleDescriptor();
}
Vehicle.MergeFrom(other.Vehicle);
}
stopTimeUpdate_.Add(other.stopTimeUpdate_);
if (other.HasTimestamp) {
Timestamp = other.Timestamp;
}
if (other.HasDelay) {
Delay = other.Delay;
}
if (other.tripProperties_ != null) {
if (tripProperties_ == null) {
TripProperties = new global::TransitRealtime.TripUpdate.Types.TripProperties();
}
TripProperties.MergeFrom(other.TripProperties);
}
pb::ExtensionSet.MergeFrom(ref _extensions, other._extensions);
_unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void MergeFrom(pb::CodedInputStream input) {
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
input.ReadRawMessage(this);
#else
uint tag;
while ((tag = input.ReadTag()) != 0) {
if ((tag & 7) == 4) {
// Abort on any end group tag.
return;
}
switch(tag) {
default:
if (!pb::ExtensionSet.TryMergeFieldFrom(ref _extensions, input)) {
_unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
}
break;
case 10: {
if (trip_ == null) {
Trip = new global::TransitRealtime.TripDescriptor();
}
input.ReadMessage(Trip);
break;
}
case 18: {
stopTimeUpdate_.AddEntriesFrom(input, _repeated_stopTimeUpdate_codec);
break;
}
case 26: {
if (vehicle_ == null) {
Vehicle = new global::TransitRealtime.VehicleDescriptor();
}
input.ReadMessage(Vehicle);
break;
}
case 32: {
Timestamp = input.ReadUInt64();
break;
}
case 40: {
Delay = input.ReadInt32();
break;
}
case 50: {
if (tripProperties_ == null) {
TripProperties = new global::TransitRealtime.TripUpdate.Types.TripProperties();
}
input.ReadMessage(TripProperties);
break;
}
}
}
#endif
}
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
uint tag;
while ((tag = input.ReadTag()) != 0) {
if ((tag & 7) == 4) {
// Abort on any end group tag.
return;
}
switch(tag) {
default:
if (!pb::ExtensionSet.TryMergeFieldFrom(ref _extensions, ref input)) {
_unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
}
break;
case 10: {
if (trip_ == null) {
Trip = new global::TransitRealtime.TripDescriptor();
}
input.ReadMessage(Trip);
break;
}
case 18: {
stopTimeUpdate_.AddEntriesFrom(ref input, _repeated_stopTimeUpdate_codec);
break;
}
case 26: {
if (vehicle_ == null) {
Vehicle = new global::TransitRealtime.VehicleDescriptor();
}
input.ReadMessage(Vehicle);
break;
}
case 32: {
Timestamp = input.ReadUInt64();
break;
}
case 40: {
Delay = input.ReadInt32();
break;
}
case 50: {
if (tripProperties_ == null) {
TripProperties = new global::TransitRealtime.TripUpdate.Types.TripProperties();
}
input.ReadMessage(TripProperties);
break;
}
}
}
}
#endif
public TValue GetExtension(pb::Extension extension) {
return pb::ExtensionSet.Get(ref _extensions, extension);
}
public pbc::RepeatedField GetExtension(pb::RepeatedExtension extension) {
return pb::ExtensionSet.Get(ref _extensions, extension);
}
public pbc::RepeatedField GetOrInitializeExtension(pb::RepeatedExtension extension) {
return pb::ExtensionSet.GetOrInitialize(ref _extensions, extension);
}
public void SetExtension(pb::Extension extension, TValue value) {
pb::ExtensionSet.Set(ref _extensions, extension, value);
}
public bool HasExtension(pb::Extension extension) {
return pb::ExtensionSet.Has(ref _extensions, extension);
}
public void ClearExtension(pb::Extension extension) {
pb::ExtensionSet.Clear(ref _extensions, extension);
}
public void ClearExtension(pb::RepeatedExtension extension) {
pb::ExtensionSet.Clear(ref _extensions, extension);
}
#region Nested types
/// Container for nested types declared in the TripUpdate message type.
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public static partial class Types {
///
/// Timing information for a single predicted event (either arrival or
/// departure).
/// Timing consists of delay and/or estimated time, and uncertainty.
/// - delay should be used when the prediction is given relative to some
/// existing schedule in GTFS.
/// - time should be given whether there is a predicted schedule or not. If
/// both time and delay are specified, time will take precedence
/// (although normally, time, if given for a scheduled trip, should be
/// equal to scheduled time in GTFS + delay).
///
/// Uncertainty applies equally to both time and delay.
/// The uncertainty roughly specifies the expected error in true delay (but
/// note, we don't yet define its precise statistical meaning). It's possible
/// for the uncertainty to be 0, for example for trains that are driven under
/// computer timing control.
///
[global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
public sealed partial class StopTimeEvent : pb::IExtendableMessage
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
, pb::IBufferMessage
#endif
{
private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new StopTimeEvent());
private pb::UnknownFieldSet _unknownFields;
private pb::ExtensionSet _extensions;
private pb::ExtensionSet _Extensions { get { return _extensions; } }
private int _hasBits0;
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public static pb::MessageParser Parser { get { return _parser; } }
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public static pbr::MessageDescriptor Descriptor {
get { return global::TransitRealtime.TripUpdate.Descriptor.NestedTypes[0]; }
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
pbr::MessageDescriptor pb::IMessage.Descriptor {
get { return Descriptor; }
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public StopTimeEvent() {
OnConstruction();
}
partial void OnConstruction();
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public StopTimeEvent(StopTimeEvent other) : this() {
_hasBits0 = other._hasBits0;
delay_ = other.delay_;
time_ = other.time_;
uncertainty_ = other.uncertainty_;
scheduledTime_ = other.scheduledTime_;
_unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
_extensions = pb::ExtensionSet.Clone(other._extensions);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public StopTimeEvent Clone() {
return new StopTimeEvent(this);
}
/// Field number for the "delay" field.
public const int DelayFieldNumber = 1;
private readonly static int DelayDefaultValue = 0;
private int delay_;
///
/// Delay (in seconds) can be positive (meaning that the vehicle is late) or
/// negative (meaning that the vehicle is ahead of schedule). Delay of 0
/// means that the vehicle is exactly on time.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public int Delay {
get { if ((_hasBits0 & 1) != 0) { return delay_; } else { return DelayDefaultValue; } }
set {
_hasBits0 |= 1;
delay_ = value;
}
}
/// Gets whether the "delay" field is set
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool HasDelay {
get { return (_hasBits0 & 1) != 0; }
}
/// Clears the value of the "delay" field
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void ClearDelay() {
_hasBits0 &= ~1;
}
/// Field number for the "time" field.
public const int TimeFieldNumber = 2;
private readonly static long TimeDefaultValue = 0L;
private long time_;
///
/// Event as absolute time.
/// In Unix time (i.e., number of seconds since January 1st 1970 00:00:00
/// UTC).
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public long Time {
get { if ((_hasBits0 & 2) != 0) { return time_; } else { return TimeDefaultValue; } }
set {
_hasBits0 |= 2;
time_ = value;
}
}
/// Gets whether the "time" field is set
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool HasTime {
get { return (_hasBits0 & 2) != 0; }
}
/// Clears the value of the "time" field
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void ClearTime() {
_hasBits0 &= ~2;
}
/// Field number for the "uncertainty" field.
public const int UncertaintyFieldNumber = 3;
private readonly static int UncertaintyDefaultValue = 0;
private int uncertainty_;
///
/// If uncertainty is omitted, it is interpreted as unknown.
/// If the prediction is unknown or too uncertain, the delay (or time) field
/// should be empty. In such case, the uncertainty field is ignored.
/// To specify a completely certain prediction, set its uncertainty to 0.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public int Uncertainty {
get { if ((_hasBits0 & 4) != 0) { return uncertainty_; } else { return UncertaintyDefaultValue; } }
set {
_hasBits0 |= 4;
uncertainty_ = value;
}
}
/// Gets whether the "uncertainty" field is set
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool HasUncertainty {
get { return (_hasBits0 & 4) != 0; }
}
/// Clears the value of the "uncertainty" field
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void ClearUncertainty() {
_hasBits0 &= ~4;
}
/// Field number for the "scheduled_time" field.
public const int ScheduledTimeFieldNumber = 4;
private readonly static long ScheduledTimeDefaultValue = 0L;
private long scheduledTime_;
///
/// Scheduled time for a NEW, REPLACEMENT, or DUPLICATED trip.
/// In Unix time (i.e., number of seconds since January 1st 1970 00:00:00
/// UTC).
/// Optional if TripUpdate.schedule_relationship is NEW, REPLACEMENT or DUPLICATED, forbidden otherwise.
/// NOTE: This field is still experimental, and subject to change. It may be formally adopted in the future.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public long ScheduledTime {
get { if ((_hasBits0 & 8) != 0) { return scheduledTime_; } else { return ScheduledTimeDefaultValue; } }
set {
_hasBits0 |= 8;
scheduledTime_ = value;
}
}
/// Gets whether the "scheduled_time" field is set
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool HasScheduledTime {
get { return (_hasBits0 & 8) != 0; }
}
/// Clears the value of the "scheduled_time" field
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void ClearScheduledTime() {
_hasBits0 &= ~8;
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public override bool Equals(object other) {
return Equals(other as StopTimeEvent);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool Equals(StopTimeEvent other) {
if (ReferenceEquals(other, null)) {
return false;
}
if (ReferenceEquals(other, this)) {
return true;
}
if (Delay != other.Delay) return false;
if (Time != other.Time) return false;
if (Uncertainty != other.Uncertainty) return false;
if (ScheduledTime != other.ScheduledTime) return false;
if (!Equals(_extensions, other._extensions)) {
return false;
}
return Equals(_unknownFields, other._unknownFields);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public override int GetHashCode() {
int hash = 1;
if (HasDelay) hash ^= Delay.GetHashCode();
if (HasTime) hash ^= Time.GetHashCode();
if (HasUncertainty) hash ^= Uncertainty.GetHashCode();
if (HasScheduledTime) hash ^= ScheduledTime.GetHashCode();
if (_extensions != null) {
hash ^= _extensions.GetHashCode();
}
if (_unknownFields != null) {
hash ^= _unknownFields.GetHashCode();
}
return hash;
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public override string ToString() {
return pb::JsonFormatter.ToDiagnosticString(this);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void WriteTo(pb::CodedOutputStream output) {
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
output.WriteRawMessage(this);
#else
if (HasDelay) {
output.WriteRawTag(8);
output.WriteInt32(Delay);
}
if (HasTime) {
output.WriteRawTag(16);
output.WriteInt64(Time);
}
if (HasUncertainty) {
output.WriteRawTag(24);
output.WriteInt32(Uncertainty);
}
if (HasScheduledTime) {
output.WriteRawTag(32);
output.WriteInt64(ScheduledTime);
}
if (_extensions != null) {
_extensions.WriteTo(output);
}
if (_unknownFields != null) {
_unknownFields.WriteTo(output);
}
#endif
}
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
if (HasDelay) {
output.WriteRawTag(8);
output.WriteInt32(Delay);
}
if (HasTime) {
output.WriteRawTag(16);
output.WriteInt64(Time);
}
if (HasUncertainty) {
output.WriteRawTag(24);
output.WriteInt32(Uncertainty);
}
if (HasScheduledTime) {
output.WriteRawTag(32);
output.WriteInt64(ScheduledTime);
}
if (_extensions != null) {
_extensions.WriteTo(ref output);
}
if (_unknownFields != null) {
_unknownFields.WriteTo(ref output);
}
}
#endif
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public int CalculateSize() {
int size = 0;
if (HasDelay) {
size += 1 + pb::CodedOutputStream.ComputeInt32Size(Delay);
}
if (HasTime) {
size += 1 + pb::CodedOutputStream.ComputeInt64Size(Time);
}
if (HasUncertainty) {
size += 1 + pb::CodedOutputStream.ComputeInt32Size(Uncertainty);
}
if (HasScheduledTime) {
size += 1 + pb::CodedOutputStream.ComputeInt64Size(ScheduledTime);
}
if (_extensions != null) {
size += _extensions.CalculateSize();
}
if (_unknownFields != null) {
size += _unknownFields.CalculateSize();
}
return size;
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void MergeFrom(StopTimeEvent other) {
if (other == null) {
return;
}
if (other.HasDelay) {
Delay = other.Delay;
}
if (other.HasTime) {
Time = other.Time;
}
if (other.HasUncertainty) {
Uncertainty = other.Uncertainty;
}
if (other.HasScheduledTime) {
ScheduledTime = other.ScheduledTime;
}
pb::ExtensionSet.MergeFrom(ref _extensions, other._extensions);
_unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void MergeFrom(pb::CodedInputStream input) {
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
input.ReadRawMessage(this);
#else
uint tag;
while ((tag = input.ReadTag()) != 0) {
if ((tag & 7) == 4) {
// Abort on any end group tag.
return;
}
switch(tag) {
default:
if (!pb::ExtensionSet.TryMergeFieldFrom(ref _extensions, input)) {
_unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
}
break;
case 8: {
Delay = input.ReadInt32();
break;
}
case 16: {
Time = input.ReadInt64();
break;
}
case 24: {
Uncertainty = input.ReadInt32();
break;
}
case 32: {
ScheduledTime = input.ReadInt64();
break;
}
}
}
#endif
}
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
uint tag;
while ((tag = input.ReadTag()) != 0) {
if ((tag & 7) == 4) {
// Abort on any end group tag.
return;
}
switch(tag) {
default:
if (!pb::ExtensionSet.TryMergeFieldFrom(ref _extensions, ref input)) {
_unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
}
break;
case 8: {
Delay = input.ReadInt32();
break;
}
case 16: {
Time = input.ReadInt64();
break;
}
case 24: {
Uncertainty = input.ReadInt32();
break;
}
case 32: {
ScheduledTime = input.ReadInt64();
break;
}
}
}
}
#endif
public TValue GetExtension(pb::Extension extension) {
return pb::ExtensionSet.Get(ref _extensions, extension);
}
public pbc::RepeatedField GetExtension(pb::RepeatedExtension extension) {
return pb::ExtensionSet.Get(ref _extensions, extension);
}
public pbc::RepeatedField GetOrInitializeExtension(pb::RepeatedExtension extension) {
return pb::ExtensionSet.GetOrInitialize(ref _extensions, extension);
}
public void SetExtension(pb::Extension extension, TValue value) {
pb::ExtensionSet.Set(ref _extensions, extension, value);
}
public bool HasExtension(pb::Extension extension) {
return pb::ExtensionSet.Has(ref _extensions, extension);
}
public void ClearExtension(pb::Extension extension) {
pb::ExtensionSet.Clear(ref _extensions, extension);
}
public void ClearExtension(pb::RepeatedExtension extension) {
pb::ExtensionSet.Clear(ref _extensions, extension);
}
}
///
/// Realtime update for arrival and/or departure events for a given stop on a
/// trip. Updates can be supplied for both past and future events.
/// The producer is allowed, although not required, to drop past events.
///
[global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
public sealed partial class StopTimeUpdate : pb::IExtendableMessage
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
, pb::IBufferMessage
#endif
{
private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new StopTimeUpdate());
private pb::UnknownFieldSet _unknownFields;
private pb::ExtensionSet _extensions;
private pb::ExtensionSet _Extensions { get { return _extensions; } }
private int _hasBits0;
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public static pb::MessageParser Parser { get { return _parser; } }
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public static pbr::MessageDescriptor Descriptor {
get { return global::TransitRealtime.TripUpdate.Descriptor.NestedTypes[1]; }
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
pbr::MessageDescriptor pb::IMessage.Descriptor {
get { return Descriptor; }
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public StopTimeUpdate() {
OnConstruction();
}
partial void OnConstruction();
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public StopTimeUpdate(StopTimeUpdate other) : this() {
_hasBits0 = other._hasBits0;
stopSequence_ = other.stopSequence_;
stopId_ = other.stopId_;
arrival_ = other.arrival_ != null ? other.arrival_.Clone() : null;
departure_ = other.departure_ != null ? other.departure_.Clone() : null;
departureOccupancyStatus_ = other.departureOccupancyStatus_;
scheduleRelationship_ = other.scheduleRelationship_;
stopTimeProperties_ = other.stopTimeProperties_ != null ? other.stopTimeProperties_.Clone() : null;
_unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
_extensions = pb::ExtensionSet.Clone(other._extensions);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public StopTimeUpdate Clone() {
return new StopTimeUpdate(this);
}
/// Field number for the "stop_sequence" field.
public const int StopSequenceFieldNumber = 1;
private readonly static uint StopSequenceDefaultValue = 0;
private uint stopSequence_;
///
/// Must be the same as in stop_times.txt in the corresponding GTFS feed.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public uint StopSequence {
get { if ((_hasBits0 & 1) != 0) { return stopSequence_; } else { return StopSequenceDefaultValue; } }
set {
_hasBits0 |= 1;
stopSequence_ = value;
}
}
/// Gets whether the "stop_sequence" field is set
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool HasStopSequence {
get { return (_hasBits0 & 1) != 0; }
}
/// Clears the value of the "stop_sequence" field
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void ClearStopSequence() {
_hasBits0 &= ~1;
}
/// Field number for the "stop_id" field.
public const int StopIdFieldNumber = 4;
private readonly static string StopIdDefaultValue = "";
private string stopId_;
///
/// Must be the same as in stops.txt in the corresponding GTFS feed.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public string StopId {
get { return stopId_ ?? StopIdDefaultValue; }
set {
stopId_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
}
}
/// Gets whether the "stop_id" field is set
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool HasStopId {
get { return stopId_ != null; }
}
/// Clears the value of the "stop_id" field
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void ClearStopId() {
stopId_ = null;
}
/// Field number for the "arrival" field.
public const int ArrivalFieldNumber = 2;
private global::TransitRealtime.TripUpdate.Types.StopTimeEvent arrival_;
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public global::TransitRealtime.TripUpdate.Types.StopTimeEvent Arrival {
get { return arrival_; }
set {
arrival_ = value;
}
}
/// Field number for the "departure" field.
public const int DepartureFieldNumber = 3;
private global::TransitRealtime.TripUpdate.Types.StopTimeEvent departure_;
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public global::TransitRealtime.TripUpdate.Types.StopTimeEvent Departure {
get { return departure_; }
set {
departure_ = value;
}
}
/// Field number for the "departure_occupancy_status" field.
public const int DepartureOccupancyStatusFieldNumber = 7;
private readonly static global::TransitRealtime.VehiclePosition.Types.OccupancyStatus DepartureOccupancyStatusDefaultValue = global::TransitRealtime.VehiclePosition.Types.OccupancyStatus.Empty;
private global::TransitRealtime.VehiclePosition.Types.OccupancyStatus departureOccupancyStatus_;
///
/// Expected occupancy after departure from the given stop.
/// Should be provided only for future stops.
/// In order to provide departure_occupancy_status without either arrival or
/// departure StopTimeEvents, ScheduleRelationship should be set to NO_DATA.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public global::TransitRealtime.VehiclePosition.Types.OccupancyStatus DepartureOccupancyStatus {
get { if ((_hasBits0 & 4) != 0) { return departureOccupancyStatus_; } else { return DepartureOccupancyStatusDefaultValue; } }
set {
_hasBits0 |= 4;
departureOccupancyStatus_ = value;
}
}
/// Gets whether the "departure_occupancy_status" field is set
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool HasDepartureOccupancyStatus {
get { return (_hasBits0 & 4) != 0; }
}
/// Clears the value of the "departure_occupancy_status" field
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void ClearDepartureOccupancyStatus() {
_hasBits0 &= ~4;
}
/// Field number for the "schedule_relationship" field.
public const int ScheduleRelationshipFieldNumber = 5;
private readonly static global::TransitRealtime.TripUpdate.Types.StopTimeUpdate.Types.ScheduleRelationship ScheduleRelationshipDefaultValue = global::TransitRealtime.TripUpdate.Types.StopTimeUpdate.Types.ScheduleRelationship.Scheduled;
private global::TransitRealtime.TripUpdate.Types.StopTimeUpdate.Types.ScheduleRelationship scheduleRelationship_;
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public global::TransitRealtime.TripUpdate.Types.StopTimeUpdate.Types.ScheduleRelationship ScheduleRelationship {
get { if ((_hasBits0 & 2) != 0) { return scheduleRelationship_; } else { return ScheduleRelationshipDefaultValue; } }
set {
_hasBits0 |= 2;
scheduleRelationship_ = value;
}
}
/// Gets whether the "schedule_relationship" field is set
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool HasScheduleRelationship {
get { return (_hasBits0 & 2) != 0; }
}
/// Clears the value of the "schedule_relationship" field
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void ClearScheduleRelationship() {
_hasBits0 &= ~2;
}
/// Field number for the "stop_time_properties" field.
public const int StopTimePropertiesFieldNumber = 6;
private global::TransitRealtime.TripUpdate.Types.StopTimeUpdate.Types.StopTimeProperties stopTimeProperties_;
///
/// Realtime updates for certain properties defined within GTFS stop_times.txt
/// NOTE: This field is still experimental, and subject to change. It may be formally adopted in the future.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public global::TransitRealtime.TripUpdate.Types.StopTimeUpdate.Types.StopTimeProperties StopTimeProperties {
get { return stopTimeProperties_; }
set {
stopTimeProperties_ = value;
}
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public override bool Equals(object other) {
return Equals(other as StopTimeUpdate);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool Equals(StopTimeUpdate other) {
if (ReferenceEquals(other, null)) {
return false;
}
if (ReferenceEquals(other, this)) {
return true;
}
if (StopSequence != other.StopSequence) return false;
if (StopId != other.StopId) return false;
if (!object.Equals(Arrival, other.Arrival)) return false;
if (!object.Equals(Departure, other.Departure)) return false;
if (DepartureOccupancyStatus != other.DepartureOccupancyStatus) return false;
if (ScheduleRelationship != other.ScheduleRelationship) return false;
if (!object.Equals(StopTimeProperties, other.StopTimeProperties)) return false;
if (!Equals(_extensions, other._extensions)) {
return false;
}
return Equals(_unknownFields, other._unknownFields);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public override int GetHashCode() {
int hash = 1;
if (HasStopSequence) hash ^= StopSequence.GetHashCode();
if (HasStopId) hash ^= StopId.GetHashCode();
if (arrival_ != null) hash ^= Arrival.GetHashCode();
if (departure_ != null) hash ^= Departure.GetHashCode();
if (HasDepartureOccupancyStatus) hash ^= DepartureOccupancyStatus.GetHashCode();
if (HasScheduleRelationship) hash ^= ScheduleRelationship.GetHashCode();
if (stopTimeProperties_ != null) hash ^= StopTimeProperties.GetHashCode();
if (_extensions != null) {
hash ^= _extensions.GetHashCode();
}
if (_unknownFields != null) {
hash ^= _unknownFields.GetHashCode();
}
return hash;
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public override string ToString() {
return pb::JsonFormatter.ToDiagnosticString(this);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void WriteTo(pb::CodedOutputStream output) {
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
output.WriteRawMessage(this);
#else
if (HasStopSequence) {
output.WriteRawTag(8);
output.WriteUInt32(StopSequence);
}
if (arrival_ != null) {
output.WriteRawTag(18);
output.WriteMessage(Arrival);
}
if (departure_ != null) {
output.WriteRawTag(26);
output.WriteMessage(Departure);
}
if (HasStopId) {
output.WriteRawTag(34);
output.WriteString(StopId);
}
if (HasScheduleRelationship) {
output.WriteRawTag(40);
output.WriteEnum((int) ScheduleRelationship);
}
if (stopTimeProperties_ != null) {
output.WriteRawTag(50);
output.WriteMessage(StopTimeProperties);
}
if (HasDepartureOccupancyStatus) {
output.WriteRawTag(56);
output.WriteEnum((int) DepartureOccupancyStatus);
}
if (_extensions != null) {
_extensions.WriteTo(output);
}
if (_unknownFields != null) {
_unknownFields.WriteTo(output);
}
#endif
}
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
if (HasStopSequence) {
output.WriteRawTag(8);
output.WriteUInt32(StopSequence);
}
if (arrival_ != null) {
output.WriteRawTag(18);
output.WriteMessage(Arrival);
}
if (departure_ != null) {
output.WriteRawTag(26);
output.WriteMessage(Departure);
}
if (HasStopId) {
output.WriteRawTag(34);
output.WriteString(StopId);
}
if (HasScheduleRelationship) {
output.WriteRawTag(40);
output.WriteEnum((int) ScheduleRelationship);
}
if (stopTimeProperties_ != null) {
output.WriteRawTag(50);
output.WriteMessage(StopTimeProperties);
}
if (HasDepartureOccupancyStatus) {
output.WriteRawTag(56);
output.WriteEnum((int) DepartureOccupancyStatus);
}
if (_extensions != null) {
_extensions.WriteTo(ref output);
}
if (_unknownFields != null) {
_unknownFields.WriteTo(ref output);
}
}
#endif
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public int CalculateSize() {
int size = 0;
if (HasStopSequence) {
size += 1 + pb::CodedOutputStream.ComputeUInt32Size(StopSequence);
}
if (HasStopId) {
size += 1 + pb::CodedOutputStream.ComputeStringSize(StopId);
}
if (arrival_ != null) {
size += 1 + pb::CodedOutputStream.ComputeMessageSize(Arrival);
}
if (departure_ != null) {
size += 1 + pb::CodedOutputStream.ComputeMessageSize(Departure);
}
if (HasDepartureOccupancyStatus) {
size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) DepartureOccupancyStatus);
}
if (HasScheduleRelationship) {
size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) ScheduleRelationship);
}
if (stopTimeProperties_ != null) {
size += 1 + pb::CodedOutputStream.ComputeMessageSize(StopTimeProperties);
}
if (_extensions != null) {
size += _extensions.CalculateSize();
}
if (_unknownFields != null) {
size += _unknownFields.CalculateSize();
}
return size;
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void MergeFrom(StopTimeUpdate other) {
if (other == null) {
return;
}
if (other.HasStopSequence) {
StopSequence = other.StopSequence;
}
if (other.HasStopId) {
StopId = other.StopId;
}
if (other.arrival_ != null) {
if (arrival_ == null) {
Arrival = new global::TransitRealtime.TripUpdate.Types.StopTimeEvent();
}
Arrival.MergeFrom(other.Arrival);
}
if (other.departure_ != null) {
if (departure_ == null) {
Departure = new global::TransitRealtime.TripUpdate.Types.StopTimeEvent();
}
Departure.MergeFrom(other.Departure);
}
if (other.HasDepartureOccupancyStatus) {
DepartureOccupancyStatus = other.DepartureOccupancyStatus;
}
if (other.HasScheduleRelationship) {
ScheduleRelationship = other.ScheduleRelationship;
}
if (other.stopTimeProperties_ != null) {
if (stopTimeProperties_ == null) {
StopTimeProperties = new global::TransitRealtime.TripUpdate.Types.StopTimeUpdate.Types.StopTimeProperties();
}
StopTimeProperties.MergeFrom(other.StopTimeProperties);
}
pb::ExtensionSet.MergeFrom(ref _extensions, other._extensions);
_unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void MergeFrom(pb::CodedInputStream input) {
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
input.ReadRawMessage(this);
#else
uint tag;
while ((tag = input.ReadTag()) != 0) {
if ((tag & 7) == 4) {
// Abort on any end group tag.
return;
}
switch(tag) {
default:
if (!pb::ExtensionSet.TryMergeFieldFrom(ref _extensions, input)) {
_unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
}
break;
case 8: {
StopSequence = input.ReadUInt32();
break;
}
case 18: {
if (arrival_ == null) {
Arrival = new global::TransitRealtime.TripUpdate.Types.StopTimeEvent();
}
input.ReadMessage(Arrival);
break;
}
case 26: {
if (departure_ == null) {
Departure = new global::TransitRealtime.TripUpdate.Types.StopTimeEvent();
}
input.ReadMessage(Departure);
break;
}
case 34: {
StopId = input.ReadString();
break;
}
case 40: {
ScheduleRelationship = (global::TransitRealtime.TripUpdate.Types.StopTimeUpdate.Types.ScheduleRelationship) input.ReadEnum();
break;
}
case 50: {
if (stopTimeProperties_ == null) {
StopTimeProperties = new global::TransitRealtime.TripUpdate.Types.StopTimeUpdate.Types.StopTimeProperties();
}
input.ReadMessage(StopTimeProperties);
break;
}
case 56: {
DepartureOccupancyStatus = (global::TransitRealtime.VehiclePosition.Types.OccupancyStatus) input.ReadEnum();
break;
}
}
}
#endif
}
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
uint tag;
while ((tag = input.ReadTag()) != 0) {
if ((tag & 7) == 4) {
// Abort on any end group tag.
return;
}
switch(tag) {
default:
if (!pb::ExtensionSet.TryMergeFieldFrom(ref _extensions, ref input)) {
_unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
}
break;
case 8: {
StopSequence = input.ReadUInt32();
break;
}
case 18: {
if (arrival_ == null) {
Arrival = new global::TransitRealtime.TripUpdate.Types.StopTimeEvent();
}
input.ReadMessage(Arrival);
break;
}
case 26: {
if (departure_ == null) {
Departure = new global::TransitRealtime.TripUpdate.Types.StopTimeEvent();
}
input.ReadMessage(Departure);
break;
}
case 34: {
StopId = input.ReadString();
break;
}
case 40: {
ScheduleRelationship = (global::TransitRealtime.TripUpdate.Types.StopTimeUpdate.Types.ScheduleRelationship) input.ReadEnum();
break;
}
case 50: {
if (stopTimeProperties_ == null) {
StopTimeProperties = new global::TransitRealtime.TripUpdate.Types.StopTimeUpdate.Types.StopTimeProperties();
}
input.ReadMessage(StopTimeProperties);
break;
}
case 56: {
DepartureOccupancyStatus = (global::TransitRealtime.VehiclePosition.Types.OccupancyStatus) input.ReadEnum();
break;
}
}
}
}
#endif
public TValue GetExtension(pb::Extension extension) {
return pb::ExtensionSet.Get(ref _extensions, extension);
}
public pbc::RepeatedField GetExtension(pb::RepeatedExtension extension) {
return pb::ExtensionSet.Get(ref _extensions, extension);
}
public pbc::RepeatedField GetOrInitializeExtension(pb::RepeatedExtension extension) {
return pb::ExtensionSet.GetOrInitialize(ref _extensions, extension);
}
public void SetExtension(pb::Extension extension, TValue value) {
pb::ExtensionSet.Set(ref _extensions, extension, value);
}
public bool HasExtension(pb::Extension extension) {
return pb::ExtensionSet.Has(ref _extensions, extension);
}
public void ClearExtension(pb::Extension extension) {
pb::ExtensionSet.Clear(ref _extensions, extension);
}
public void ClearExtension(pb::RepeatedExtension extension) {
pb::ExtensionSet.Clear(ref _extensions, extension);
}
#region Nested types
/// Container for nested types declared in the StopTimeUpdate message type.
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public static partial class Types {
///
/// The relation between the StopTimeEvents and the static schedule.
///
public enum ScheduleRelationship {
///
/// The vehicle is proceeding in accordance with its static schedule of
/// stops, although not necessarily according to the times of the schedule.
/// At least one of arrival and departure must be provided. If the schedule
/// for this stop contains both arrival and departure times then so must
/// this update. Frequency-based trips (GTFS frequencies.txt with exact_times = 0)
/// should not have a SCHEDULED value and should use UNSCHEDULED instead.
///
[pbr::OriginalName("SCHEDULED")] Scheduled = 0,
///
/// The stop is skipped, i.e., the vehicle will not stop at this stop.
/// Arrival and departure are optional.
///
[pbr::OriginalName("SKIPPED")] Skipped = 1,
///
/// No StopTimeEvents are given for this stop.
/// The main intention for this value is to give time predictions only for
/// part of a trip, i.e., if the last update for a trip has a NO_DATA
/// specifier, then StopTimeEvents for the rest of the stops in the trip
/// are considered to be unspecified as well.
/// Neither arrival nor departure should be supplied.
///
[pbr::OriginalName("NO_DATA")] NoData = 2,
///
/// The vehicle is operating a trip defined in GTFS frequencies.txt with exact_times = 0.
/// This value should not be used for trips that are not defined in GTFS frequencies.txt,
/// or trips in GTFS frequencies.txt with exact_times = 1. Trips containing StopTimeUpdates
/// with ScheduleRelationship=UNSCHEDULED must also set TripDescriptor.ScheduleRelationship=UNSCHEDULED.
/// NOTE: This field is still experimental, and subject to change. It may be
/// formally adopted in the future.
///
[pbr::OriginalName("UNSCHEDULED")] Unscheduled = 3,
}
///
/// Provides the updated values for the stop time.
/// NOTE: This message is still experimental, and subject to change. It may be formally adopted in the future.
///
[global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
public sealed partial class StopTimeProperties : pb::IExtendableMessage
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
, pb::IBufferMessage
#endif
{
private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new StopTimeProperties());
private pb::UnknownFieldSet _unknownFields;
private pb::ExtensionSet _extensions;
private pb::ExtensionSet _Extensions { get { return _extensions; } }
private int _hasBits0;
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public static pb::MessageParser Parser { get { return _parser; } }
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public static pbr::MessageDescriptor Descriptor {
get { return global::TransitRealtime.TripUpdate.Types.StopTimeUpdate.Descriptor.NestedTypes[0]; }
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
pbr::MessageDescriptor pb::IMessage.Descriptor {
get { return Descriptor; }
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public StopTimeProperties() {
OnConstruction();
}
partial void OnConstruction();
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public StopTimeProperties(StopTimeProperties other) : this() {
_hasBits0 = other._hasBits0;
assignedStopId_ = other.assignedStopId_;
stopHeadsign_ = other.stopHeadsign_;
pickupType_ = other.pickupType_;
dropOffType_ = other.dropOffType_;
_unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
_extensions = pb::ExtensionSet.Clone(other._extensions);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public StopTimeProperties Clone() {
return new StopTimeProperties(this);
}
/// Field number for the "assigned_stop_id" field.
public const int AssignedStopIdFieldNumber = 1;
private readonly static string AssignedStopIdDefaultValue = "";
private string assignedStopId_;
///
/// Supports real-time stop assignments. Refers to a stop_id defined in the GTFS stops.txt.
/// The new assigned_stop_id should not result in a significantly different trip experience for the end user than
/// the stop_id defined in GTFS stop_times.txt. In other words, the end user should not view this new stop_id as an
/// "unusual change" if the new stop was presented within an app without any additional context.
/// For example, this field is intended to be used for platform assignments by using a stop_id that belongs to the
/// same station as the stop originally defined in GTFS stop_times.txt.
/// To assign a stop without providing any real-time arrival or departure predictions, populate this field and set
/// StopTimeUpdate.schedule_relationship = NO_DATA.
/// If this field is populated, it is preferred to omit `StopTimeUpdate.stop_id` and use only `StopTimeUpdate.stop_sequence`. If
/// `StopTimeProperties.assigned_stop_id` and `StopTimeUpdate.stop_id` are populated, `StopTimeUpdate.stop_id` must match `assigned_stop_id`.
/// Platform assignments should be reflected in other GTFS-realtime fields as well
/// (e.g., `VehiclePosition.stop_id`).
/// NOTE: This field is still experimental, and subject to change. It may be formally adopted in the future.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public string AssignedStopId {
get { return assignedStopId_ ?? AssignedStopIdDefaultValue; }
set {
assignedStopId_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
}
}
/// Gets whether the "assigned_stop_id" field is set
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool HasAssignedStopId {
get { return assignedStopId_ != null; }
}
/// Clears the value of the "assigned_stop_id" field
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void ClearAssignedStopId() {
assignedStopId_ = null;
}
/// Field number for the "stop_headsign" field.
public const int StopHeadsignFieldNumber = 2;
private readonly static string StopHeadsignDefaultValue = "";
private string stopHeadsign_;
///
/// The updated headsign of the vehicle at the stop.
/// NOTE: This field is still experimental, and subject to change. It may be formally adopted in the future.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public string StopHeadsign {
get { return stopHeadsign_ ?? StopHeadsignDefaultValue; }
set {
stopHeadsign_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
}
}
/// Gets whether the "stop_headsign" field is set
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool HasStopHeadsign {
get { return stopHeadsign_ != null; }
}
/// Clears the value of the "stop_headsign" field
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void ClearStopHeadsign() {
stopHeadsign_ = null;
}
/// Field number for the "pickup_type" field.
public const int PickupTypeFieldNumber = 3;
private readonly static global::TransitRealtime.TripUpdate.Types.StopTimeUpdate.Types.StopTimeProperties.Types.DropOffPickupType PickupTypeDefaultValue = global::TransitRealtime.TripUpdate.Types.StopTimeUpdate.Types.StopTimeProperties.Types.DropOffPickupType.Regular;
private global::TransitRealtime.TripUpdate.Types.StopTimeUpdate.Types.StopTimeProperties.Types.DropOffPickupType pickupType_;
///
/// The updated pickup of the vehicle at the stop.
/// NOTE: This field is still experimental, and subject to change. It may be formally adopted in the future.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public global::TransitRealtime.TripUpdate.Types.StopTimeUpdate.Types.StopTimeProperties.Types.DropOffPickupType PickupType {
get { if ((_hasBits0 & 1) != 0) { return pickupType_; } else { return PickupTypeDefaultValue; } }
set {
_hasBits0 |= 1;
pickupType_ = value;
}
}
/// Gets whether the "pickup_type" field is set
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool HasPickupType {
get { return (_hasBits0 & 1) != 0; }
}
/// Clears the value of the "pickup_type" field
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void ClearPickupType() {
_hasBits0 &= ~1;
}
/// Field number for the "drop_off_type" field.
public const int DropOffTypeFieldNumber = 4;
private readonly static global::TransitRealtime.TripUpdate.Types.StopTimeUpdate.Types.StopTimeProperties.Types.DropOffPickupType DropOffTypeDefaultValue = global::TransitRealtime.TripUpdate.Types.StopTimeUpdate.Types.StopTimeProperties.Types.DropOffPickupType.Regular;
private global::TransitRealtime.TripUpdate.Types.StopTimeUpdate.Types.StopTimeProperties.Types.DropOffPickupType dropOffType_;
///
/// The updated drop off of the vehicle at the stop.
/// NOTE: This field is still experimental, and subject to change. It may be formally adopted in the future.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public global::TransitRealtime.TripUpdate.Types.StopTimeUpdate.Types.StopTimeProperties.Types.DropOffPickupType DropOffType {
get { if ((_hasBits0 & 2) != 0) { return dropOffType_; } else { return DropOffTypeDefaultValue; } }
set {
_hasBits0 |= 2;
dropOffType_ = value;
}
}
/// Gets whether the "drop_off_type" field is set
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool HasDropOffType {
get { return (_hasBits0 & 2) != 0; }
}
/// Clears the value of the "drop_off_type" field
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void ClearDropOffType() {
_hasBits0 &= ~2;
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public override bool Equals(object other) {
return Equals(other as StopTimeProperties);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool Equals(StopTimeProperties other) {
if (ReferenceEquals(other, null)) {
return false;
}
if (ReferenceEquals(other, this)) {
return true;
}
if (AssignedStopId != other.AssignedStopId) return false;
if (StopHeadsign != other.StopHeadsign) return false;
if (PickupType != other.PickupType) return false;
if (DropOffType != other.DropOffType) return false;
if (!Equals(_extensions, other._extensions)) {
return false;
}
return Equals(_unknownFields, other._unknownFields);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public override int GetHashCode() {
int hash = 1;
if (HasAssignedStopId) hash ^= AssignedStopId.GetHashCode();
if (HasStopHeadsign) hash ^= StopHeadsign.GetHashCode();
if (HasPickupType) hash ^= PickupType.GetHashCode();
if (HasDropOffType) hash ^= DropOffType.GetHashCode();
if (_extensions != null) {
hash ^= _extensions.GetHashCode();
}
if (_unknownFields != null) {
hash ^= _unknownFields.GetHashCode();
}
return hash;
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public override string ToString() {
return pb::JsonFormatter.ToDiagnosticString(this);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void WriteTo(pb::CodedOutputStream output) {
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
output.WriteRawMessage(this);
#else
if (HasAssignedStopId) {
output.WriteRawTag(10);
output.WriteString(AssignedStopId);
}
if (HasStopHeadsign) {
output.WriteRawTag(18);
output.WriteString(StopHeadsign);
}
if (HasPickupType) {
output.WriteRawTag(24);
output.WriteEnum((int) PickupType);
}
if (HasDropOffType) {
output.WriteRawTag(32);
output.WriteEnum((int) DropOffType);
}
if (_extensions != null) {
_extensions.WriteTo(output);
}
if (_unknownFields != null) {
_unknownFields.WriteTo(output);
}
#endif
}
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
if (HasAssignedStopId) {
output.WriteRawTag(10);
output.WriteString(AssignedStopId);
}
if (HasStopHeadsign) {
output.WriteRawTag(18);
output.WriteString(StopHeadsign);
}
if (HasPickupType) {
output.WriteRawTag(24);
output.WriteEnum((int) PickupType);
}
if (HasDropOffType) {
output.WriteRawTag(32);
output.WriteEnum((int) DropOffType);
}
if (_extensions != null) {
_extensions.WriteTo(ref output);
}
if (_unknownFields != null) {
_unknownFields.WriteTo(ref output);
}
}
#endif
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public int CalculateSize() {
int size = 0;
if (HasAssignedStopId) {
size += 1 + pb::CodedOutputStream.ComputeStringSize(AssignedStopId);
}
if (HasStopHeadsign) {
size += 1 + pb::CodedOutputStream.ComputeStringSize(StopHeadsign);
}
if (HasPickupType) {
size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) PickupType);
}
if (HasDropOffType) {
size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) DropOffType);
}
if (_extensions != null) {
size += _extensions.CalculateSize();
}
if (_unknownFields != null) {
size += _unknownFields.CalculateSize();
}
return size;
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void MergeFrom(StopTimeProperties other) {
if (other == null) {
return;
}
if (other.HasAssignedStopId) {
AssignedStopId = other.AssignedStopId;
}
if (other.HasStopHeadsign) {
StopHeadsign = other.StopHeadsign;
}
if (other.HasPickupType) {
PickupType = other.PickupType;
}
if (other.HasDropOffType) {
DropOffType = other.DropOffType;
}
pb::ExtensionSet.MergeFrom(ref _extensions, other._extensions);
_unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void MergeFrom(pb::CodedInputStream input) {
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
input.ReadRawMessage(this);
#else
uint tag;
while ((tag = input.ReadTag()) != 0) {
if ((tag & 7) == 4) {
// Abort on any end group tag.
return;
}
switch(tag) {
default:
if (!pb::ExtensionSet.TryMergeFieldFrom(ref _extensions, input)) {
_unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
}
break;
case 10: {
AssignedStopId = input.ReadString();
break;
}
case 18: {
StopHeadsign = input.ReadString();
break;
}
case 24: {
PickupType = (global::TransitRealtime.TripUpdate.Types.StopTimeUpdate.Types.StopTimeProperties.Types.DropOffPickupType) input.ReadEnum();
break;
}
case 32: {
DropOffType = (global::TransitRealtime.TripUpdate.Types.StopTimeUpdate.Types.StopTimeProperties.Types.DropOffPickupType) input.ReadEnum();
break;
}
}
}
#endif
}
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
uint tag;
while ((tag = input.ReadTag()) != 0) {
if ((tag & 7) == 4) {
// Abort on any end group tag.
return;
}
switch(tag) {
default:
if (!pb::ExtensionSet.TryMergeFieldFrom(ref _extensions, ref input)) {
_unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
}
break;
case 10: {
AssignedStopId = input.ReadString();
break;
}
case 18: {
StopHeadsign = input.ReadString();
break;
}
case 24: {
PickupType = (global::TransitRealtime.TripUpdate.Types.StopTimeUpdate.Types.StopTimeProperties.Types.DropOffPickupType) input.ReadEnum();
break;
}
case 32: {
DropOffType = (global::TransitRealtime.TripUpdate.Types.StopTimeUpdate.Types.StopTimeProperties.Types.DropOffPickupType) input.ReadEnum();
break;
}
}
}
}
#endif
public TValue GetExtension(pb::Extension extension) {
return pb::ExtensionSet.Get(ref _extensions, extension);
}
public pbc::RepeatedField GetExtension(pb::RepeatedExtension extension) {
return pb::ExtensionSet.Get(ref _extensions, extension);
}
public pbc::RepeatedField GetOrInitializeExtension(pb::RepeatedExtension extension) {
return pb::ExtensionSet.GetOrInitialize(ref _extensions, extension);
}
public void SetExtension(pb::Extension extension, TValue value) {
pb::ExtensionSet.Set(ref _extensions, extension, value);
}
public bool HasExtension(pb::Extension extension) {
return pb::ExtensionSet.Has(ref _extensions, extension);
}
public void ClearExtension(pb::Extension extension) {
pb::ExtensionSet.Clear(ref _extensions, extension);
}
public void ClearExtension(pb::RepeatedExtension extension) {
pb::ExtensionSet.Clear(ref _extensions, extension);
}
#region Nested types
/// Container for nested types declared in the StopTimeProperties message type.
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public static partial class Types {
public enum DropOffPickupType {
///
/// Regularly scheduled pickup/dropoff.
///
[pbr::OriginalName("REGULAR")] Regular = 0,
///
/// No pickup/dropoff available
///
[pbr::OriginalName("NONE")] None = 1,
///
/// Must phone agency to arrange pickup/dropoff.
///
[pbr::OriginalName("PHONE_AGENCY")] PhoneAgency = 2,
///
/// Must coordinate with driver to arrange pickup/dropoff.
///
[pbr::OriginalName("COORDINATE_WITH_DRIVER")] CoordinateWithDriver = 3,
}
}
#endregion
}
}
#endregion
}
///
/// Defines updated properties of the trip, such as a new shape_id when there is a detour. Or defines the
/// trip_id, start_date, and start_time of a DUPLICATED trip.
/// NOTE: This message is still experimental, and subject to change. It may be formally adopted in the future.
///
[global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
public sealed partial class TripProperties : pb::IExtendableMessage
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
, pb::IBufferMessage
#endif
{
private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new TripProperties());
private pb::UnknownFieldSet _unknownFields;
private pb::ExtensionSet _extensions;
private pb::ExtensionSet _Extensions { get { return _extensions; } }
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public static pb::MessageParser Parser { get { return _parser; } }
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public static pbr::MessageDescriptor Descriptor {
get { return global::TransitRealtime.TripUpdate.Descriptor.NestedTypes[2]; }
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
pbr::MessageDescriptor pb::IMessage.Descriptor {
get { return Descriptor; }
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public TripProperties() {
OnConstruction();
}
partial void OnConstruction();
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public TripProperties(TripProperties other) : this() {
tripId_ = other.tripId_;
startDate_ = other.startDate_;
startTime_ = other.startTime_;
shapeId_ = other.shapeId_;
tripHeadsign_ = other.tripHeadsign_;
tripShortName_ = other.tripShortName_;
_unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
_extensions = pb::ExtensionSet.Clone(other._extensions);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public TripProperties Clone() {
return new TripProperties(this);
}
/// Field number for the "trip_id" field.
public const int TripIdFieldNumber = 1;
private readonly static string TripIdDefaultValue = "";
private string tripId_;
///
/// Defines the identifier of a new trip that is a duplicate of an existing trip defined in (CSV) GTFS trips.txt
/// but will start at a different service date and/or time (defined using the TripProperties.start_date and
/// TripProperties.start_time fields). See definition of trips.trip_id in (CSV) GTFS. Its value must be different
/// than the ones used in the (CSV) GTFS. Required if schedule_relationship=DUPLICATED, otherwise this field must not
/// be populated and will be ignored by consumers.
/// NOTE: This field is still experimental, and subject to change. It may be formally adopted in the future.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public string TripId {
get { return tripId_ ?? TripIdDefaultValue; }
set {
tripId_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
}
}
/// Gets whether the "trip_id" field is set
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool HasTripId {
get { return tripId_ != null; }
}
/// Clears the value of the "trip_id" field
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void ClearTripId() {
tripId_ = null;
}
/// Field number for the "start_date" field.
public const int StartDateFieldNumber = 2;
private readonly static string StartDateDefaultValue = "";
private string startDate_;
///
/// Service date on which the DUPLICATED trip will be run, in YYYYMMDD format. Required if
/// schedule_relationship=DUPLICATED, otherwise this field must not be populated and will be ignored by consumers.
/// NOTE: This field is still experimental, and subject to change. It may be formally adopted in the future.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public string StartDate {
get { return startDate_ ?? StartDateDefaultValue; }
set {
startDate_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
}
}
/// Gets whether the "start_date" field is set
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool HasStartDate {
get { return startDate_ != null; }
}
/// Clears the value of the "start_date" field
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void ClearStartDate() {
startDate_ = null;
}
/// Field number for the "start_time" field.
public const int StartTimeFieldNumber = 3;
private readonly static string StartTimeDefaultValue = "";
private string startTime_;
///
/// Defines the departure start time of the trip when it’s duplicated. See definition of stop_times.departure_time
/// in (CSV) GTFS. Scheduled arrival and departure times for the duplicated trip are calculated based on the offset
/// between the original trip departure_time and this field. For example, if a GTFS trip has stop A with a
/// departure_time of 10:00:00 and stop B with departure_time of 10:01:00, and this field is populated with the value
/// of 10:30:00, stop B on the duplicated trip will have a scheduled departure_time of 10:31:00. Real-time prediction
/// delay values are applied to this calculated schedule time to determine the predicted time. For example, if a
/// departure delay of 30 is provided for stop B, then the predicted departure time is 10:31:30. Real-time
/// prediction time values do not have any offset applied to them and indicate the predicted time as provided.
/// For example, if a departure time representing 10:31:30 is provided for stop B, then the predicted departure time
/// is 10:31:30. This field is required if schedule_relationship is DUPLICATED, otherwise this field must not be
/// populated and will be ignored by consumers.
/// NOTE: This field is still experimental, and subject to change. It may be formally adopted in the future.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public string StartTime {
get { return startTime_ ?? StartTimeDefaultValue; }
set {
startTime_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
}
}
/// Gets whether the "start_time" field is set
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool HasStartTime {
get { return startTime_ != null; }
}
/// Clears the value of the "start_time" field
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void ClearStartTime() {
startTime_ = null;
}
/// Field number for the "shape_id" field.
public const int ShapeIdFieldNumber = 4;
private readonly static string ShapeIdDefaultValue = "";
private string shapeId_;
///
/// Specifies the identifier of the shape of the vehicle travel path when the trip shape differs from the shape specified in (CSV) GTFS
/// or to specify it in real-time when it's not provided by (CSV) GTFS, such as a vehicle that takes differing paths based on rider demand. See definition of trips.shape_id in (CSV) GTFS.
/// If a shape is neither defined in (CSV) GTFS nor in real-time, the shape is considered unknown. This field can refer to a shape defined in the (CSV) GTFS in shapes.txt or a `Shape` in the same (protobuf) real-time feed.
/// The order of stops (stop sequences) for this trip must remain the same as (CSV) GTFS.
/// If it refers to a `Shape` entity in the same real-time feed, the value of this field should be the one of the `shape_id` inside the entity, and _not_ the `id` of `FeedEntity`.
/// Stops that are a part of the original trip but will no longer be made, such as when a detour occurs, should be marked as schedule_relationship=SKIPPED or more details can be provided via a `TripModifications` message.
/// NOTE: This field is still experimental, and subject to change. It may be formally adopted in the future.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public string ShapeId {
get { return shapeId_ ?? ShapeIdDefaultValue; }
set {
shapeId_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
}
}
/// Gets whether the "shape_id" field is set
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool HasShapeId {
get { return shapeId_ != null; }
}
/// Clears the value of the "shape_id" field
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void ClearShapeId() {
shapeId_ = null;
}
/// Field number for the "trip_headsign" field.
public const int TripHeadsignFieldNumber = 5;
private readonly static string TripHeadsignDefaultValue = "";
private string tripHeadsign_;
///
/// Specifies the headsign for this trip when it differs from the original.
/// NOTE: This field is still experimental, and subject to change. It may be formally adopted in the future.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public string TripHeadsign {
get { return tripHeadsign_ ?? TripHeadsignDefaultValue; }
set {
tripHeadsign_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
}
}
/// Gets whether the "trip_headsign" field is set
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool HasTripHeadsign {
get { return tripHeadsign_ != null; }
}
/// Clears the value of the "trip_headsign" field
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void ClearTripHeadsign() {
tripHeadsign_ = null;
}
/// Field number for the "trip_short_name" field.
public const int TripShortNameFieldNumber = 6;
private readonly static string TripShortNameDefaultValue = "";
private string tripShortName_;
///
/// Specifies the name for this trip when it differs from the original.
/// NOTE: This field is still experimental, and subject to change. It may be formally adopted in the future.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public string TripShortName {
get { return tripShortName_ ?? TripShortNameDefaultValue; }
set {
tripShortName_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
}
}
/// Gets whether the "trip_short_name" field is set
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool HasTripShortName {
get { return tripShortName_ != null; }
}
/// Clears the value of the "trip_short_name" field
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void ClearTripShortName() {
tripShortName_ = null;
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public override bool Equals(object other) {
return Equals(other as TripProperties);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool Equals(TripProperties other) {
if (ReferenceEquals(other, null)) {
return false;
}
if (ReferenceEquals(other, this)) {
return true;
}
if (TripId != other.TripId) return false;
if (StartDate != other.StartDate) return false;
if (StartTime != other.StartTime) return false;
if (ShapeId != other.ShapeId) return false;
if (TripHeadsign != other.TripHeadsign) return false;
if (TripShortName != other.TripShortName) return false;
if (!Equals(_extensions, other._extensions)) {
return false;
}
return Equals(_unknownFields, other._unknownFields);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public override int GetHashCode() {
int hash = 1;
if (HasTripId) hash ^= TripId.GetHashCode();
if (HasStartDate) hash ^= StartDate.GetHashCode();
if (HasStartTime) hash ^= StartTime.GetHashCode();
if (HasShapeId) hash ^= ShapeId.GetHashCode();
if (HasTripHeadsign) hash ^= TripHeadsign.GetHashCode();
if (HasTripShortName) hash ^= TripShortName.GetHashCode();
if (_extensions != null) {
hash ^= _extensions.GetHashCode();
}
if (_unknownFields != null) {
hash ^= _unknownFields.GetHashCode();
}
return hash;
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public override string ToString() {
return pb::JsonFormatter.ToDiagnosticString(this);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void WriteTo(pb::CodedOutputStream output) {
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
output.WriteRawMessage(this);
#else
if (HasTripId) {
output.WriteRawTag(10);
output.WriteString(TripId);
}
if (HasStartDate) {
output.WriteRawTag(18);
output.WriteString(StartDate);
}
if (HasStartTime) {
output.WriteRawTag(26);
output.WriteString(StartTime);
}
if (HasShapeId) {
output.WriteRawTag(34);
output.WriteString(ShapeId);
}
if (HasTripHeadsign) {
output.WriteRawTag(42);
output.WriteString(TripHeadsign);
}
if (HasTripShortName) {
output.WriteRawTag(50);
output.WriteString(TripShortName);
}
if (_extensions != null) {
_extensions.WriteTo(output);
}
if (_unknownFields != null) {
_unknownFields.WriteTo(output);
}
#endif
}
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
if (HasTripId) {
output.WriteRawTag(10);
output.WriteString(TripId);
}
if (HasStartDate) {
output.WriteRawTag(18);
output.WriteString(StartDate);
}
if (HasStartTime) {
output.WriteRawTag(26);
output.WriteString(StartTime);
}
if (HasShapeId) {
output.WriteRawTag(34);
output.WriteString(ShapeId);
}
if (HasTripHeadsign) {
output.WriteRawTag(42);
output.WriteString(TripHeadsign);
}
if (HasTripShortName) {
output.WriteRawTag(50);
output.WriteString(TripShortName);
}
if (_extensions != null) {
_extensions.WriteTo(ref output);
}
if (_unknownFields != null) {
_unknownFields.WriteTo(ref output);
}
}
#endif
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public int CalculateSize() {
int size = 0;
if (HasTripId) {
size += 1 + pb::CodedOutputStream.ComputeStringSize(TripId);
}
if (HasStartDate) {
size += 1 + pb::CodedOutputStream.ComputeStringSize(StartDate);
}
if (HasStartTime) {
size += 1 + pb::CodedOutputStream.ComputeStringSize(StartTime);
}
if (HasShapeId) {
size += 1 + pb::CodedOutputStream.ComputeStringSize(ShapeId);
}
if (HasTripHeadsign) {
size += 1 + pb::CodedOutputStream.ComputeStringSize(TripHeadsign);
}
if (HasTripShortName) {
size += 1 + pb::CodedOutputStream.ComputeStringSize(TripShortName);
}
if (_extensions != null) {
size += _extensions.CalculateSize();
}
if (_unknownFields != null) {
size += _unknownFields.CalculateSize();
}
return size;
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void MergeFrom(TripProperties other) {
if (other == null) {
return;
}
if (other.HasTripId) {
TripId = other.TripId;
}
if (other.HasStartDate) {
StartDate = other.StartDate;
}
if (other.HasStartTime) {
StartTime = other.StartTime;
}
if (other.HasShapeId) {
ShapeId = other.ShapeId;
}
if (other.HasTripHeadsign) {
TripHeadsign = other.TripHeadsign;
}
if (other.HasTripShortName) {
TripShortName = other.TripShortName;
}
pb::ExtensionSet.MergeFrom(ref _extensions, other._extensions);
_unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void MergeFrom(pb::CodedInputStream input) {
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
input.ReadRawMessage(this);
#else
uint tag;
while ((tag = input.ReadTag()) != 0) {
if ((tag & 7) == 4) {
// Abort on any end group tag.
return;
}
switch(tag) {
default:
if (!pb::ExtensionSet.TryMergeFieldFrom(ref _extensions, input)) {
_unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
}
break;
case 10: {
TripId = input.ReadString();
break;
}
case 18: {
StartDate = input.ReadString();
break;
}
case 26: {
StartTime = input.ReadString();
break;
}
case 34: {
ShapeId = input.ReadString();
break;
}
case 42: {
TripHeadsign = input.ReadString();
break;
}
case 50: {
TripShortName = input.ReadString();
break;
}
}
}
#endif
}
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
uint tag;
while ((tag = input.ReadTag()) != 0) {
if ((tag & 7) == 4) {
// Abort on any end group tag.
return;
}
switch(tag) {
default:
if (!pb::ExtensionSet.TryMergeFieldFrom(ref _extensions, ref input)) {
_unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
}
break;
case 10: {
TripId = input.ReadString();
break;
}
case 18: {
StartDate = input.ReadString();
break;
}
case 26: {
StartTime = input.ReadString();
break;
}
case 34: {
ShapeId = input.ReadString();
break;
}
case 42: {
TripHeadsign = input.ReadString();
break;
}
case 50: {
TripShortName = input.ReadString();
break;
}
}
}
}
#endif
public TValue GetExtension(pb::Extension extension) {
return pb::ExtensionSet.Get(ref _extensions, extension);
}
public pbc::RepeatedField GetExtension(pb::RepeatedExtension extension) {
return pb::ExtensionSet.Get(ref _extensions, extension);
}
public pbc::RepeatedField GetOrInitializeExtension(pb::RepeatedExtension extension) {
return pb::ExtensionSet.GetOrInitialize(ref _extensions, extension);
}
public void SetExtension(pb::Extension extension, TValue value) {
pb::ExtensionSet.Set(ref _extensions, extension, value);
}
public bool HasExtension(pb::Extension extension) {
return pb::ExtensionSet.Has(ref _extensions, extension);
}
public void ClearExtension(pb::Extension extension) {
pb::ExtensionSet.Clear(ref _extensions, extension);
}
public void ClearExtension(pb::RepeatedExtension extension) {
pb::ExtensionSet.Clear(ref _extensions, extension);
}
}
}
#endregion
}
///
/// Realtime positioning information for a given vehicle.
///
[global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
public sealed partial class VehiclePosition : pb::IExtendableMessage
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
, pb::IBufferMessage
#endif
{
private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new VehiclePosition());
private pb::UnknownFieldSet _unknownFields;
private pb::ExtensionSet _extensions;
private pb::ExtensionSet _Extensions { get { return _extensions; } }
private int _hasBits0;
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public static pb::MessageParser Parser { get { return _parser; } }
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public static pbr::MessageDescriptor Descriptor {
get { return global::TransitRealtime.GtfsRealtimeReflection.Descriptor.MessageTypes[4]; }
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
pbr::MessageDescriptor pb::IMessage.Descriptor {
get { return Descriptor; }
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public VehiclePosition() {
OnConstruction();
}
partial void OnConstruction();
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public VehiclePosition(VehiclePosition other) : this() {
_hasBits0 = other._hasBits0;
trip_ = other.trip_ != null ? other.trip_.Clone() : null;
vehicle_ = other.vehicle_ != null ? other.vehicle_.Clone() : null;
position_ = other.position_ != null ? other.position_.Clone() : null;
currentStopSequence_ = other.currentStopSequence_;
stopId_ = other.stopId_;
currentStatus_ = other.currentStatus_;
timestamp_ = other.timestamp_;
congestionLevel_ = other.congestionLevel_;
occupancyStatus_ = other.occupancyStatus_;
occupancyPercentage_ = other.occupancyPercentage_;
multiCarriageDetails_ = other.multiCarriageDetails_.Clone();
_unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
_extensions = pb::ExtensionSet.Clone(other._extensions);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public VehiclePosition Clone() {
return new VehiclePosition(this);
}
/// Field number for the "trip" field.
public const int TripFieldNumber = 1;
private global::TransitRealtime.TripDescriptor trip_;
///
/// The Trip that this vehicle is serving.
/// Can be empty or partial if the vehicle can not be identified with a given
/// trip instance.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public global::TransitRealtime.TripDescriptor Trip {
get { return trip_; }
set {
trip_ = value;
}
}
/// Field number for the "vehicle" field.
public const int VehicleFieldNumber = 8;
private global::TransitRealtime.VehicleDescriptor vehicle_;
///
/// Additional information on the vehicle that is serving this trip.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public global::TransitRealtime.VehicleDescriptor Vehicle {
get { return vehicle_; }
set {
vehicle_ = value;
}
}
/// Field number for the "position" field.
public const int PositionFieldNumber = 2;
private global::TransitRealtime.Position position_;
///
/// Current position of this vehicle.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public global::TransitRealtime.Position Position {
get { return position_; }
set {
position_ = value;
}
}
/// Field number for the "current_stop_sequence" field.
public const int CurrentStopSequenceFieldNumber = 3;
private readonly static uint CurrentStopSequenceDefaultValue = 0;
private uint currentStopSequence_;
///
/// The stop sequence index of the current stop. The meaning of
/// current_stop_sequence (i.e., the stop that it refers to) is determined by
/// current_status.
/// If current_status is missing IN_TRANSIT_TO is assumed.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public uint CurrentStopSequence {
get { if ((_hasBits0 & 1) != 0) { return currentStopSequence_; } else { return CurrentStopSequenceDefaultValue; } }
set {
_hasBits0 |= 1;
currentStopSequence_ = value;
}
}
/// Gets whether the "current_stop_sequence" field is set
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool HasCurrentStopSequence {
get { return (_hasBits0 & 1) != 0; }
}
/// Clears the value of the "current_stop_sequence" field
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void ClearCurrentStopSequence() {
_hasBits0 &= ~1;
}
/// Field number for the "stop_id" field.
public const int StopIdFieldNumber = 7;
private readonly static string StopIdDefaultValue = "";
private string stopId_;
///
/// Identifies the current stop. The value must be the same as in stops.txt in
/// the corresponding GTFS feed.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public string StopId {
get { return stopId_ ?? StopIdDefaultValue; }
set {
stopId_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
}
}
/// Gets whether the "stop_id" field is set
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool HasStopId {
get { return stopId_ != null; }
}
/// Clears the value of the "stop_id" field
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void ClearStopId() {
stopId_ = null;
}
/// Field number for the "current_status" field.
public const int CurrentStatusFieldNumber = 4;
private readonly static global::TransitRealtime.VehiclePosition.Types.VehicleStopStatus CurrentStatusDefaultValue = global::TransitRealtime.VehiclePosition.Types.VehicleStopStatus.InTransitTo;
private global::TransitRealtime.VehiclePosition.Types.VehicleStopStatus currentStatus_;
///
/// The exact status of the vehicle with respect to the current stop.
/// Ignored if current_stop_sequence is missing.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public global::TransitRealtime.VehiclePosition.Types.VehicleStopStatus CurrentStatus {
get { if ((_hasBits0 & 2) != 0) { return currentStatus_; } else { return CurrentStatusDefaultValue; } }
set {
_hasBits0 |= 2;
currentStatus_ = value;
}
}
/// Gets whether the "current_status" field is set
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool HasCurrentStatus {
get { return (_hasBits0 & 2) != 0; }
}
/// Clears the value of the "current_status" field
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void ClearCurrentStatus() {
_hasBits0 &= ~2;
}
/// Field number for the "timestamp" field.
public const int TimestampFieldNumber = 5;
private readonly static ulong TimestampDefaultValue = 0UL;
private ulong timestamp_;
///
/// Moment at which the vehicle's position was measured. In POSIX time
/// (i.e., number of seconds since January 1st 1970 00:00:00 UTC).
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public ulong Timestamp {
get { if ((_hasBits0 & 4) != 0) { return timestamp_; } else { return TimestampDefaultValue; } }
set {
_hasBits0 |= 4;
timestamp_ = value;
}
}
/// Gets whether the "timestamp" field is set
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool HasTimestamp {
get { return (_hasBits0 & 4) != 0; }
}
/// Clears the value of the "timestamp" field
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void ClearTimestamp() {
_hasBits0 &= ~4;
}
/// Field number for the "congestion_level" field.
public const int CongestionLevelFieldNumber = 6;
private readonly static global::TransitRealtime.VehiclePosition.Types.CongestionLevel CongestionLevelDefaultValue = global::TransitRealtime.VehiclePosition.Types.CongestionLevel.UnknownCongestionLevel;
private global::TransitRealtime.VehiclePosition.Types.CongestionLevel congestionLevel_;
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public global::TransitRealtime.VehiclePosition.Types.CongestionLevel CongestionLevel {
get { if ((_hasBits0 & 8) != 0) { return congestionLevel_; } else { return CongestionLevelDefaultValue; } }
set {
_hasBits0 |= 8;
congestionLevel_ = value;
}
}
/// Gets whether the "congestion_level" field is set
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool HasCongestionLevel {
get { return (_hasBits0 & 8) != 0; }
}
/// Clears the value of the "congestion_level" field
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void ClearCongestionLevel() {
_hasBits0 &= ~8;
}
/// Field number for the "occupancy_status" field.
public const int OccupancyStatusFieldNumber = 9;
private readonly static global::TransitRealtime.VehiclePosition.Types.OccupancyStatus OccupancyStatusDefaultValue = global::TransitRealtime.VehiclePosition.Types.OccupancyStatus.Empty;
private global::TransitRealtime.VehiclePosition.Types.OccupancyStatus occupancyStatus_;
///
/// If multi_carriage_status is populated with per-carriage OccupancyStatus,
/// then this field should describe the entire vehicle with all carriages accepting passengers considered.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public global::TransitRealtime.VehiclePosition.Types.OccupancyStatus OccupancyStatus {
get { if ((_hasBits0 & 16) != 0) { return occupancyStatus_; } else { return OccupancyStatusDefaultValue; } }
set {
_hasBits0 |= 16;
occupancyStatus_ = value;
}
}
/// Gets whether the "occupancy_status" field is set
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool HasOccupancyStatus {
get { return (_hasBits0 & 16) != 0; }
}
/// Clears the value of the "occupancy_status" field
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void ClearOccupancyStatus() {
_hasBits0 &= ~16;
}
/// Field number for the "occupancy_percentage" field.
public const int OccupancyPercentageFieldNumber = 10;
private readonly static uint OccupancyPercentageDefaultValue = 0;
private uint occupancyPercentage_;
///
/// A percentage value indicating the degree of passenger occupancy in the vehicle.
/// The values are represented as an integer without decimals. 0 means 0% and 100 means 100%.
/// The value 100 should represent the total maximum occupancy the vehicle was designed for,
/// including both seated and standing capacity, and current operating regulations allow.
/// The value may exceed 100 if there are more passengers than the maximum designed capacity.
/// The precision of occupancy_percentage should be low enough that individual passengers cannot be tracked boarding or alighting the vehicle.
/// If multi_carriage_status is populated with per-carriage occupancy_percentage,
/// then this field should describe the entire vehicle with all carriages accepting passengers considered.
/// This field is still experimental, and subject to change. It may be formally adopted in the future.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public uint OccupancyPercentage {
get { if ((_hasBits0 & 32) != 0) { return occupancyPercentage_; } else { return OccupancyPercentageDefaultValue; } }
set {
_hasBits0 |= 32;
occupancyPercentage_ = value;
}
}
/// Gets whether the "occupancy_percentage" field is set
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool HasOccupancyPercentage {
get { return (_hasBits0 & 32) != 0; }
}
/// Clears the value of the "occupancy_percentage" field
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void ClearOccupancyPercentage() {
_hasBits0 &= ~32;
}
/// Field number for the "multi_carriage_details" field.
public const int MultiCarriageDetailsFieldNumber = 11;
private static readonly pb::FieldCodec _repeated_multiCarriageDetails_codec
= pb::FieldCodec.ForMessage(90, global::TransitRealtime.VehiclePosition.Types.CarriageDetails.Parser);
private readonly pbc::RepeatedField multiCarriageDetails_ = new pbc::RepeatedField();
///
/// Details of the multiple carriages of this given vehicle.
/// The first occurrence represents the first carriage of the vehicle,
/// given the current direction of travel.
/// The number of occurrences of the multi_carriage_details
/// field represents the number of carriages of the vehicle.
/// It also includes non boardable carriages,
/// like engines, maintenance carriages, etc… as they provide valuable
/// information to passengers about where to stand on a platform.
/// This message/field is still experimental, and subject to change. It may be formally adopted in the future.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public pbc::RepeatedField MultiCarriageDetails {
get { return multiCarriageDetails_; }
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public override bool Equals(object other) {
return Equals(other as VehiclePosition);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool Equals(VehiclePosition other) {
if (ReferenceEquals(other, null)) {
return false;
}
if (ReferenceEquals(other, this)) {
return true;
}
if (!object.Equals(Trip, other.Trip)) return false;
if (!object.Equals(Vehicle, other.Vehicle)) return false;
if (!object.Equals(Position, other.Position)) return false;
if (CurrentStopSequence != other.CurrentStopSequence) return false;
if (StopId != other.StopId) return false;
if (CurrentStatus != other.CurrentStatus) return false;
if (Timestamp != other.Timestamp) return false;
if (CongestionLevel != other.CongestionLevel) return false;
if (OccupancyStatus != other.OccupancyStatus) return false;
if (OccupancyPercentage != other.OccupancyPercentage) return false;
if(!multiCarriageDetails_.Equals(other.multiCarriageDetails_)) return false;
if (!Equals(_extensions, other._extensions)) {
return false;
}
return Equals(_unknownFields, other._unknownFields);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public override int GetHashCode() {
int hash = 1;
if (trip_ != null) hash ^= Trip.GetHashCode();
if (vehicle_ != null) hash ^= Vehicle.GetHashCode();
if (position_ != null) hash ^= Position.GetHashCode();
if (HasCurrentStopSequence) hash ^= CurrentStopSequence.GetHashCode();
if (HasStopId) hash ^= StopId.GetHashCode();
if (HasCurrentStatus) hash ^= CurrentStatus.GetHashCode();
if (HasTimestamp) hash ^= Timestamp.GetHashCode();
if (HasCongestionLevel) hash ^= CongestionLevel.GetHashCode();
if (HasOccupancyStatus) hash ^= OccupancyStatus.GetHashCode();
if (HasOccupancyPercentage) hash ^= OccupancyPercentage.GetHashCode();
hash ^= multiCarriageDetails_.GetHashCode();
if (_extensions != null) {
hash ^= _extensions.GetHashCode();
}
if (_unknownFields != null) {
hash ^= _unknownFields.GetHashCode();
}
return hash;
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public override string ToString() {
return pb::JsonFormatter.ToDiagnosticString(this);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void WriteTo(pb::CodedOutputStream output) {
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
output.WriteRawMessage(this);
#else
if (trip_ != null) {
output.WriteRawTag(10);
output.WriteMessage(Trip);
}
if (position_ != null) {
output.WriteRawTag(18);
output.WriteMessage(Position);
}
if (HasCurrentStopSequence) {
output.WriteRawTag(24);
output.WriteUInt32(CurrentStopSequence);
}
if (HasCurrentStatus) {
output.WriteRawTag(32);
output.WriteEnum((int) CurrentStatus);
}
if (HasTimestamp) {
output.WriteRawTag(40);
output.WriteUInt64(Timestamp);
}
if (HasCongestionLevel) {
output.WriteRawTag(48);
output.WriteEnum((int) CongestionLevel);
}
if (HasStopId) {
output.WriteRawTag(58);
output.WriteString(StopId);
}
if (vehicle_ != null) {
output.WriteRawTag(66);
output.WriteMessage(Vehicle);
}
if (HasOccupancyStatus) {
output.WriteRawTag(72);
output.WriteEnum((int) OccupancyStatus);
}
if (HasOccupancyPercentage) {
output.WriteRawTag(80);
output.WriteUInt32(OccupancyPercentage);
}
multiCarriageDetails_.WriteTo(output, _repeated_multiCarriageDetails_codec);
if (_extensions != null) {
_extensions.WriteTo(output);
}
if (_unknownFields != null) {
_unknownFields.WriteTo(output);
}
#endif
}
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
if (trip_ != null) {
output.WriteRawTag(10);
output.WriteMessage(Trip);
}
if (position_ != null) {
output.WriteRawTag(18);
output.WriteMessage(Position);
}
if (HasCurrentStopSequence) {
output.WriteRawTag(24);
output.WriteUInt32(CurrentStopSequence);
}
if (HasCurrentStatus) {
output.WriteRawTag(32);
output.WriteEnum((int) CurrentStatus);
}
if (HasTimestamp) {
output.WriteRawTag(40);
output.WriteUInt64(Timestamp);
}
if (HasCongestionLevel) {
output.WriteRawTag(48);
output.WriteEnum((int) CongestionLevel);
}
if (HasStopId) {
output.WriteRawTag(58);
output.WriteString(StopId);
}
if (vehicle_ != null) {
output.WriteRawTag(66);
output.WriteMessage(Vehicle);
}
if (HasOccupancyStatus) {
output.WriteRawTag(72);
output.WriteEnum((int) OccupancyStatus);
}
if (HasOccupancyPercentage) {
output.WriteRawTag(80);
output.WriteUInt32(OccupancyPercentage);
}
multiCarriageDetails_.WriteTo(ref output, _repeated_multiCarriageDetails_codec);
if (_extensions != null) {
_extensions.WriteTo(ref output);
}
if (_unknownFields != null) {
_unknownFields.WriteTo(ref output);
}
}
#endif
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public int CalculateSize() {
int size = 0;
if (trip_ != null) {
size += 1 + pb::CodedOutputStream.ComputeMessageSize(Trip);
}
if (vehicle_ != null) {
size += 1 + pb::CodedOutputStream.ComputeMessageSize(Vehicle);
}
if (position_ != null) {
size += 1 + pb::CodedOutputStream.ComputeMessageSize(Position);
}
if (HasCurrentStopSequence) {
size += 1 + pb::CodedOutputStream.ComputeUInt32Size(CurrentStopSequence);
}
if (HasStopId) {
size += 1 + pb::CodedOutputStream.ComputeStringSize(StopId);
}
if (HasCurrentStatus) {
size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) CurrentStatus);
}
if (HasTimestamp) {
size += 1 + pb::CodedOutputStream.ComputeUInt64Size(Timestamp);
}
if (HasCongestionLevel) {
size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) CongestionLevel);
}
if (HasOccupancyStatus) {
size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) OccupancyStatus);
}
if (HasOccupancyPercentage) {
size += 1 + pb::CodedOutputStream.ComputeUInt32Size(OccupancyPercentage);
}
size += multiCarriageDetails_.CalculateSize(_repeated_multiCarriageDetails_codec);
if (_extensions != null) {
size += _extensions.CalculateSize();
}
if (_unknownFields != null) {
size += _unknownFields.CalculateSize();
}
return size;
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void MergeFrom(VehiclePosition other) {
if (other == null) {
return;
}
if (other.trip_ != null) {
if (trip_ == null) {
Trip = new global::TransitRealtime.TripDescriptor();
}
Trip.MergeFrom(other.Trip);
}
if (other.vehicle_ != null) {
if (vehicle_ == null) {
Vehicle = new global::TransitRealtime.VehicleDescriptor();
}
Vehicle.MergeFrom(other.Vehicle);
}
if (other.position_ != null) {
if (position_ == null) {
Position = new global::TransitRealtime.Position();
}
Position.MergeFrom(other.Position);
}
if (other.HasCurrentStopSequence) {
CurrentStopSequence = other.CurrentStopSequence;
}
if (other.HasStopId) {
StopId = other.StopId;
}
if (other.HasCurrentStatus) {
CurrentStatus = other.CurrentStatus;
}
if (other.HasTimestamp) {
Timestamp = other.Timestamp;
}
if (other.HasCongestionLevel) {
CongestionLevel = other.CongestionLevel;
}
if (other.HasOccupancyStatus) {
OccupancyStatus = other.OccupancyStatus;
}
if (other.HasOccupancyPercentage) {
OccupancyPercentage = other.OccupancyPercentage;
}
multiCarriageDetails_.Add(other.multiCarriageDetails_);
pb::ExtensionSet.MergeFrom(ref _extensions, other._extensions);
_unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void MergeFrom(pb::CodedInputStream input) {
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
input.ReadRawMessage(this);
#else
uint tag;
while ((tag = input.ReadTag()) != 0) {
if ((tag & 7) == 4) {
// Abort on any end group tag.
return;
}
switch(tag) {
default:
if (!pb::ExtensionSet.TryMergeFieldFrom(ref _extensions, input)) {
_unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
}
break;
case 10: {
if (trip_ == null) {
Trip = new global::TransitRealtime.TripDescriptor();
}
input.ReadMessage(Trip);
break;
}
case 18: {
if (position_ == null) {
Position = new global::TransitRealtime.Position();
}
input.ReadMessage(Position);
break;
}
case 24: {
CurrentStopSequence = input.ReadUInt32();
break;
}
case 32: {
CurrentStatus = (global::TransitRealtime.VehiclePosition.Types.VehicleStopStatus) input.ReadEnum();
break;
}
case 40: {
Timestamp = input.ReadUInt64();
break;
}
case 48: {
CongestionLevel = (global::TransitRealtime.VehiclePosition.Types.CongestionLevel) input.ReadEnum();
break;
}
case 58: {
StopId = input.ReadString();
break;
}
case 66: {
if (vehicle_ == null) {
Vehicle = new global::TransitRealtime.VehicleDescriptor();
}
input.ReadMessage(Vehicle);
break;
}
case 72: {
OccupancyStatus = (global::TransitRealtime.VehiclePosition.Types.OccupancyStatus) input.ReadEnum();
break;
}
case 80: {
OccupancyPercentage = input.ReadUInt32();
break;
}
case 90: {
multiCarriageDetails_.AddEntriesFrom(input, _repeated_multiCarriageDetails_codec);
break;
}
}
}
#endif
}
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
uint tag;
while ((tag = input.ReadTag()) != 0) {
if ((tag & 7) == 4) {
// Abort on any end group tag.
return;
}
switch(tag) {
default:
if (!pb::ExtensionSet.TryMergeFieldFrom(ref _extensions, ref input)) {
_unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
}
break;
case 10: {
if (trip_ == null) {
Trip = new global::TransitRealtime.TripDescriptor();
}
input.ReadMessage(Trip);
break;
}
case 18: {
if (position_ == null) {
Position = new global::TransitRealtime.Position();
}
input.ReadMessage(Position);
break;
}
case 24: {
CurrentStopSequence = input.ReadUInt32();
break;
}
case 32: {
CurrentStatus = (global::TransitRealtime.VehiclePosition.Types.VehicleStopStatus) input.ReadEnum();
break;
}
case 40: {
Timestamp = input.ReadUInt64();
break;
}
case 48: {
CongestionLevel = (global::TransitRealtime.VehiclePosition.Types.CongestionLevel) input.ReadEnum();
break;
}
case 58: {
StopId = input.ReadString();
break;
}
case 66: {
if (vehicle_ == null) {
Vehicle = new global::TransitRealtime.VehicleDescriptor();
}
input.ReadMessage(Vehicle);
break;
}
case 72: {
OccupancyStatus = (global::TransitRealtime.VehiclePosition.Types.OccupancyStatus) input.ReadEnum();
break;
}
case 80: {
OccupancyPercentage = input.ReadUInt32();
break;
}
case 90: {
multiCarriageDetails_.AddEntriesFrom(ref input, _repeated_multiCarriageDetails_codec);
break;
}
}
}
}
#endif
public TValue GetExtension(pb::Extension extension) {
return pb::ExtensionSet.Get(ref _extensions, extension);
}
public pbc::RepeatedField GetExtension(pb::RepeatedExtension extension) {
return pb::ExtensionSet.Get(ref _extensions, extension);
}
public pbc::RepeatedField GetOrInitializeExtension(pb::RepeatedExtension extension) {
return pb::ExtensionSet.GetOrInitialize(ref _extensions, extension);
}
public void SetExtension(pb::Extension extension, TValue value) {
pb::ExtensionSet.Set(ref _extensions, extension, value);
}
public bool HasExtension(pb::Extension extension) {
return pb::ExtensionSet.Has(ref _extensions, extension);
}
public void ClearExtension(pb::Extension extension) {
pb::ExtensionSet.Clear(ref _extensions, extension);
}
public void ClearExtension(pb::RepeatedExtension extension) {
pb::ExtensionSet.Clear(ref _extensions, extension);
}
#region Nested types
/// Container for nested types declared in the VehiclePosition message type.
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public static partial class Types {
public enum VehicleStopStatus {
///
/// The vehicle is just about to arrive at the stop (on a stop
/// display, the vehicle symbol typically flashes).
///
[pbr::OriginalName("INCOMING_AT")] IncomingAt = 0,
///
/// The vehicle is standing at the stop.
///
[pbr::OriginalName("STOPPED_AT")] StoppedAt = 1,
///
/// The vehicle has departed and is in transit to the next stop.
///
[pbr::OriginalName("IN_TRANSIT_TO")] InTransitTo = 2,
}
///
/// Congestion level that is affecting this vehicle.
///
public enum CongestionLevel {
[pbr::OriginalName("UNKNOWN_CONGESTION_LEVEL")] UnknownCongestionLevel = 0,
[pbr::OriginalName("RUNNING_SMOOTHLY")] RunningSmoothly = 1,
[pbr::OriginalName("STOP_AND_GO")] StopAndGo = 2,
[pbr::OriginalName("CONGESTION")] Congestion = 3,
///
/// People leaving their cars.
///
[pbr::OriginalName("SEVERE_CONGESTION")] SevereCongestion = 4,
}
///
/// The state of passenger occupancy for the vehicle or carriage.
/// Individual producers may not publish all OccupancyStatus values. Therefore, consumers
/// must not assume that the OccupancyStatus values follow a linear scale.
/// Consumers should represent OccupancyStatus values as the state indicated
/// and intended by the producer. Likewise, producers must use OccupancyStatus values that
/// correspond to actual vehicle occupancy states.
/// For describing passenger occupancy levels on a linear scale, see `occupancy_percentage`.
/// This field is still experimental, and subject to change. It may be formally adopted in the future.
///
public enum OccupancyStatus {
///
/// The vehicle or carriage is considered empty by most measures, and has few or no
/// passengers onboard, but is still accepting passengers.
///
[pbr::OriginalName("EMPTY")] Empty = 0,
///
/// The vehicle or carriage has a large number of seats available.
/// The amount of free seats out of the total seats available to be
/// considered large enough to fall into this category is determined at the
/// discretion of the producer.
///
[pbr::OriginalName("MANY_SEATS_AVAILABLE")] ManySeatsAvailable = 1,
///
/// The vehicle or carriage has a relatively small number of seats available.
/// The amount of free seats out of the total seats available to be
/// considered small enough to fall into this category is determined at the
/// discretion of the feed producer.
///
[pbr::OriginalName("FEW_SEATS_AVAILABLE")] FewSeatsAvailable = 2,
///
/// The vehicle or carriage can currently accommodate only standing passengers.
///
[pbr::OriginalName("STANDING_ROOM_ONLY")] StandingRoomOnly = 3,
///
/// The vehicle or carriage can currently accommodate only standing passengers
/// and has limited space for them.
///
[pbr::OriginalName("CRUSHED_STANDING_ROOM_ONLY")] CrushedStandingRoomOnly = 4,
///
/// The vehicle or carriage is considered full by most measures, but may still be
/// allowing passengers to board.
///
[pbr::OriginalName("FULL")] Full = 5,
///
/// The vehicle or carriage is not accepting passengers, but usually accepts passengers for boarding.
///
[pbr::OriginalName("NOT_ACCEPTING_PASSENGERS")] NotAcceptingPassengers = 6,
///
/// The vehicle or carriage doesn't have any occupancy data available at that time.
///
[pbr::OriginalName("NO_DATA_AVAILABLE")] NoDataAvailable = 7,
///
/// The vehicle or carriage is not boardable and never accepts passengers.
/// Useful for special vehicles or carriages (engine, maintenance carriage, etc…).
///
[pbr::OriginalName("NOT_BOARDABLE")] NotBoardable = 8,
}
///
/// Carriage specific details, used for vehicles composed of several carriages
/// This message/field is still experimental, and subject to change. It may be formally adopted in the future.
///
[global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
public sealed partial class CarriageDetails : pb::IExtendableMessage
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
, pb::IBufferMessage
#endif
{
private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new CarriageDetails());
private pb::UnknownFieldSet _unknownFields;
private pb::ExtensionSet _extensions;
private pb::ExtensionSet _Extensions { get { return _extensions; } }
private int _hasBits0;
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public static pb::MessageParser Parser { get { return _parser; } }
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public static pbr::MessageDescriptor Descriptor {
get { return global::TransitRealtime.VehiclePosition.Descriptor.NestedTypes[0]; }
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
pbr::MessageDescriptor pb::IMessage.Descriptor {
get { return Descriptor; }
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public CarriageDetails() {
OnConstruction();
}
partial void OnConstruction();
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public CarriageDetails(CarriageDetails other) : this() {
_hasBits0 = other._hasBits0;
id_ = other.id_;
label_ = other.label_;
occupancyStatus_ = other.occupancyStatus_;
occupancyPercentage_ = other.occupancyPercentage_;
carriageSequence_ = other.carriageSequence_;
_unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
_extensions = pb::ExtensionSet.Clone(other._extensions);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public CarriageDetails Clone() {
return new CarriageDetails(this);
}
/// Field number for the "id" field.
public const int IdFieldNumber = 1;
private readonly static string IdDefaultValue = "";
private string id_;
///
/// Identification of the carriage. Should be unique per vehicle.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public string Id {
get { return id_ ?? IdDefaultValue; }
set {
id_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
}
}
/// Gets whether the "id" field is set
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool HasId {
get { return id_ != null; }
}
/// Clears the value of the "id" field
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void ClearId() {
id_ = null;
}
/// Field number for the "label" field.
public const int LabelFieldNumber = 2;
private readonly static string LabelDefaultValue = "";
private string label_;
///
/// User visible label that may be shown to the passenger to help identify
/// the carriage. Example: "7712", "Car ABC-32", etc...
/// This message/field is still experimental, and subject to change. It may be formally adopted in the future.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public string Label {
get { return label_ ?? LabelDefaultValue; }
set {
label_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
}
}
/// Gets whether the "label" field is set
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool HasLabel {
get { return label_ != null; }
}
/// Clears the value of the "label" field
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void ClearLabel() {
label_ = null;
}
/// Field number for the "occupancy_status" field.
public const int OccupancyStatusFieldNumber = 3;
private readonly static global::TransitRealtime.VehiclePosition.Types.OccupancyStatus OccupancyStatusDefaultValue = global::TransitRealtime.VehiclePosition.Types.OccupancyStatus.NoDataAvailable;
private global::TransitRealtime.VehiclePosition.Types.OccupancyStatus occupancyStatus_;
///
/// Occupancy status for this given carriage, in this vehicle
/// This message/field is still experimental, and subject to change. It may be formally adopted in the future.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public global::TransitRealtime.VehiclePosition.Types.OccupancyStatus OccupancyStatus {
get { if ((_hasBits0 & 1) != 0) { return occupancyStatus_; } else { return OccupancyStatusDefaultValue; } }
set {
_hasBits0 |= 1;
occupancyStatus_ = value;
}
}
/// Gets whether the "occupancy_status" field is set
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool HasOccupancyStatus {
get { return (_hasBits0 & 1) != 0; }
}
/// Clears the value of the "occupancy_status" field
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void ClearOccupancyStatus() {
_hasBits0 &= ~1;
}
/// Field number for the "occupancy_percentage" field.
public const int OccupancyPercentageFieldNumber = 4;
private readonly static int OccupancyPercentageDefaultValue = -1;
private int occupancyPercentage_;
///
/// Occupancy percentage for this given carriage, in this vehicle.
/// Follows the same rules as "VehiclePosition.occupancy_percentage"
/// -1 in case data is not available for this given carriage (as protobuf defaults to 0 otherwise)
/// This message/field is still experimental, and subject to change. It may be formally adopted in the future.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public int OccupancyPercentage {
get { if ((_hasBits0 & 2) != 0) { return occupancyPercentage_; } else { return OccupancyPercentageDefaultValue; } }
set {
_hasBits0 |= 2;
occupancyPercentage_ = value;
}
}
/// Gets whether the "occupancy_percentage" field is set
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool HasOccupancyPercentage {
get { return (_hasBits0 & 2) != 0; }
}
/// Clears the value of the "occupancy_percentage" field
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void ClearOccupancyPercentage() {
_hasBits0 &= ~2;
}
/// Field number for the "carriage_sequence" field.
public const int CarriageSequenceFieldNumber = 5;
private readonly static uint CarriageSequenceDefaultValue = 0;
private uint carriageSequence_;
///
/// Identifies the order of this carriage with respect to the other
/// carriages in the vehicle's list of CarriageDetails.
/// The first carriage in the direction of travel must have a value of 1.
/// The second value corresponds to the second carriage in the direction
/// of travel and must have a value of 2, and so forth.
/// For example, the first carriage in the direction of travel has a value of 1.
/// If the second carriage in the direction of travel has a value of 3,
/// consumers will discard data for all carriages (i.e., the multi_carriage_details field).
/// Carriages without data must be represented with a valid carriage_sequence number and the fields
/// without data should be omitted (alternately, those fields could also be included and set to the "no data" values).
/// This message/field is still experimental, and subject to change. It may be formally adopted in the future.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public uint CarriageSequence {
get { if ((_hasBits0 & 4) != 0) { return carriageSequence_; } else { return CarriageSequenceDefaultValue; } }
set {
_hasBits0 |= 4;
carriageSequence_ = value;
}
}
/// Gets whether the "carriage_sequence" field is set
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool HasCarriageSequence {
get { return (_hasBits0 & 4) != 0; }
}
/// Clears the value of the "carriage_sequence" field
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void ClearCarriageSequence() {
_hasBits0 &= ~4;
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public override bool Equals(object other) {
return Equals(other as CarriageDetails);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool Equals(CarriageDetails other) {
if (ReferenceEquals(other, null)) {
return false;
}
if (ReferenceEquals(other, this)) {
return true;
}
if (Id != other.Id) return false;
if (Label != other.Label) return false;
if (OccupancyStatus != other.OccupancyStatus) return false;
if (OccupancyPercentage != other.OccupancyPercentage) return false;
if (CarriageSequence != other.CarriageSequence) return false;
if (!Equals(_extensions, other._extensions)) {
return false;
}
return Equals(_unknownFields, other._unknownFields);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public override int GetHashCode() {
int hash = 1;
if (HasId) hash ^= Id.GetHashCode();
if (HasLabel) hash ^= Label.GetHashCode();
if (HasOccupancyStatus) hash ^= OccupancyStatus.GetHashCode();
if (HasOccupancyPercentage) hash ^= OccupancyPercentage.GetHashCode();
if (HasCarriageSequence) hash ^= CarriageSequence.GetHashCode();
if (_extensions != null) {
hash ^= _extensions.GetHashCode();
}
if (_unknownFields != null) {
hash ^= _unknownFields.GetHashCode();
}
return hash;
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public override string ToString() {
return pb::JsonFormatter.ToDiagnosticString(this);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void WriteTo(pb::CodedOutputStream output) {
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
output.WriteRawMessage(this);
#else
if (HasId) {
output.WriteRawTag(10);
output.WriteString(Id);
}
if (HasLabel) {
output.WriteRawTag(18);
output.WriteString(Label);
}
if (HasOccupancyStatus) {
output.WriteRawTag(24);
output.WriteEnum((int) OccupancyStatus);
}
if (HasOccupancyPercentage) {
output.WriteRawTag(32);
output.WriteInt32(OccupancyPercentage);
}
if (HasCarriageSequence) {
output.WriteRawTag(40);
output.WriteUInt32(CarriageSequence);
}
if (_extensions != null) {
_extensions.WriteTo(output);
}
if (_unknownFields != null) {
_unknownFields.WriteTo(output);
}
#endif
}
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
if (HasId) {
output.WriteRawTag(10);
output.WriteString(Id);
}
if (HasLabel) {
output.WriteRawTag(18);
output.WriteString(Label);
}
if (HasOccupancyStatus) {
output.WriteRawTag(24);
output.WriteEnum((int) OccupancyStatus);
}
if (HasOccupancyPercentage) {
output.WriteRawTag(32);
output.WriteInt32(OccupancyPercentage);
}
if (HasCarriageSequence) {
output.WriteRawTag(40);
output.WriteUInt32(CarriageSequence);
}
if (_extensions != null) {
_extensions.WriteTo(ref output);
}
if (_unknownFields != null) {
_unknownFields.WriteTo(ref output);
}
}
#endif
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public int CalculateSize() {
int size = 0;
if (HasId) {
size += 1 + pb::CodedOutputStream.ComputeStringSize(Id);
}
if (HasLabel) {
size += 1 + pb::CodedOutputStream.ComputeStringSize(Label);
}
if (HasOccupancyStatus) {
size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) OccupancyStatus);
}
if (HasOccupancyPercentage) {
size += 1 + pb::CodedOutputStream.ComputeInt32Size(OccupancyPercentage);
}
if (HasCarriageSequence) {
size += 1 + pb::CodedOutputStream.ComputeUInt32Size(CarriageSequence);
}
if (_extensions != null) {
size += _extensions.CalculateSize();
}
if (_unknownFields != null) {
size += _unknownFields.CalculateSize();
}
return size;
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void MergeFrom(CarriageDetails other) {
if (other == null) {
return;
}
if (other.HasId) {
Id = other.Id;
}
if (other.HasLabel) {
Label = other.Label;
}
if (other.HasOccupancyStatus) {
OccupancyStatus = other.OccupancyStatus;
}
if (other.HasOccupancyPercentage) {
OccupancyPercentage = other.OccupancyPercentage;
}
if (other.HasCarriageSequence) {
CarriageSequence = other.CarriageSequence;
}
pb::ExtensionSet.MergeFrom(ref _extensions, other._extensions);
_unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void MergeFrom(pb::CodedInputStream input) {
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
input.ReadRawMessage(this);
#else
uint tag;
while ((tag = input.ReadTag()) != 0) {
if ((tag & 7) == 4) {
// Abort on any end group tag.
return;
}
switch(tag) {
default:
if (!pb::ExtensionSet.TryMergeFieldFrom(ref _extensions, input)) {
_unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
}
break;
case 10: {
Id = input.ReadString();
break;
}
case 18: {
Label = input.ReadString();
break;
}
case 24: {
OccupancyStatus = (global::TransitRealtime.VehiclePosition.Types.OccupancyStatus) input.ReadEnum();
break;
}
case 32: {
OccupancyPercentage = input.ReadInt32();
break;
}
case 40: {
CarriageSequence = input.ReadUInt32();
break;
}
}
}
#endif
}
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
uint tag;
while ((tag = input.ReadTag()) != 0) {
if ((tag & 7) == 4) {
// Abort on any end group tag.
return;
}
switch(tag) {
default:
if (!pb::ExtensionSet.TryMergeFieldFrom(ref _extensions, ref input)) {
_unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
}
break;
case 10: {
Id = input.ReadString();
break;
}
case 18: {
Label = input.ReadString();
break;
}
case 24: {
OccupancyStatus = (global::TransitRealtime.VehiclePosition.Types.OccupancyStatus) input.ReadEnum();
break;
}
case 32: {
OccupancyPercentage = input.ReadInt32();
break;
}
case 40: {
CarriageSequence = input.ReadUInt32();
break;
}
}
}
}
#endif
public TValue GetExtension(pb::Extension extension) {
return pb::ExtensionSet.Get(ref _extensions, extension);
}
public pbc::RepeatedField GetExtension(pb::RepeatedExtension extension) {
return pb::ExtensionSet.Get(ref _extensions, extension);
}
public pbc::RepeatedField GetOrInitializeExtension(pb::RepeatedExtension extension) {
return pb::ExtensionSet.GetOrInitialize(ref _extensions, extension);
}
public void SetExtension(pb::Extension extension, TValue value) {
pb::ExtensionSet.Set(ref _extensions, extension, value);
}
public bool HasExtension(pb::Extension extension) {
return pb::ExtensionSet.Has(ref _extensions, extension);
}
public void ClearExtension(pb::Extension extension) {
pb::ExtensionSet.Clear(ref _extensions, extension);
}
public void ClearExtension(pb::RepeatedExtension extension) {
pb::ExtensionSet.Clear(ref _extensions, extension);
}
}
}
#endregion
}
///
/// An alert, indicating some sort of incident in the public transit network.
///
[global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
public sealed partial class Alert : pb::IExtendableMessage
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
, pb::IBufferMessage
#endif
{
private static readonly pb::MessageParser _parser = new pb::MessageParser(() => new Alert());
private pb::UnknownFieldSet _unknownFields;
private pb::ExtensionSet _extensions;
private pb::ExtensionSet _Extensions { get { return _extensions; } }
private int _hasBits0;
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public static pb::MessageParser Parser { get { return _parser; } }
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public static pbr::MessageDescriptor Descriptor {
get { return global::TransitRealtime.GtfsRealtimeReflection.Descriptor.MessageTypes[5]; }
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
pbr::MessageDescriptor pb::IMessage.Descriptor {
get { return Descriptor; }
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public Alert() {
OnConstruction();
}
partial void OnConstruction();
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public Alert(Alert other) : this() {
_hasBits0 = other._hasBits0;
activePeriod_ = other.activePeriod_.Clone();
informedEntity_ = other.informedEntity_.Clone();
cause_ = other.cause_;
effect_ = other.effect_;
url_ = other.url_ != null ? other.url_.Clone() : null;
headerText_ = other.headerText_ != null ? other.headerText_.Clone() : null;
descriptionText_ = other.descriptionText_ != null ? other.descriptionText_.Clone() : null;
ttsHeaderText_ = other.ttsHeaderText_ != null ? other.ttsHeaderText_.Clone() : null;
ttsDescriptionText_ = other.ttsDescriptionText_ != null ? other.ttsDescriptionText_.Clone() : null;
severityLevel_ = other.severityLevel_;
image_ = other.image_ != null ? other.image_.Clone() : null;
imageAlternativeText_ = other.imageAlternativeText_ != null ? other.imageAlternativeText_.Clone() : null;
causeDetail_ = other.causeDetail_ != null ? other.causeDetail_.Clone() : null;
effectDetail_ = other.effectDetail_ != null ? other.effectDetail_.Clone() : null;
_unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
_extensions = pb::ExtensionSet.Clone(other._extensions);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public Alert Clone() {
return new Alert(this);
}
/// Field number for the "active_period" field.
public const int ActivePeriodFieldNumber = 1;
private static readonly pb::FieldCodec _repeated_activePeriod_codec
= pb::FieldCodec.ForMessage(10, global::TransitRealtime.TimeRange.Parser);
private readonly pbc::RepeatedField activePeriod_ = new pbc::RepeatedField();
///
/// Time when the alert should be shown to the user. If missing, the
/// alert will be shown as long as it appears in the feed.
/// If multiple ranges are given, the alert will be shown during all of them.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public pbc::RepeatedField ActivePeriod {
get { return activePeriod_; }
}
/// Field number for the "informed_entity" field.
public const int InformedEntityFieldNumber = 5;
private static readonly pb::FieldCodec _repeated_informedEntity_codec
= pb::FieldCodec.ForMessage(42, global::TransitRealtime.EntitySelector.Parser);
private readonly pbc::RepeatedField informedEntity_ = new pbc::RepeatedField();
///
/// Entities whose users we should notify of this alert.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public pbc::RepeatedField InformedEntity {
get { return informedEntity_; }
}
/// Field number for the "cause" field.
public const int CauseFieldNumber = 6;
private readonly static global::TransitRealtime.Alert.Types.Cause CauseDefaultValue = global::TransitRealtime.Alert.Types.Cause.UnknownCause;
private global::TransitRealtime.Alert.Types.Cause cause_;
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public global::TransitRealtime.Alert.Types.Cause Cause {
get { if ((_hasBits0 & 1) != 0) { return cause_; } else { return CauseDefaultValue; } }
set {
_hasBits0 |= 1;
cause_ = value;
}
}
/// Gets whether the "cause" field is set
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool HasCause {
get { return (_hasBits0 & 1) != 0; }
}
/// Clears the value of the "cause" field
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void ClearCause() {
_hasBits0 &= ~1;
}
/// Field number for the "effect" field.
public const int EffectFieldNumber = 7;
private readonly static global::TransitRealtime.Alert.Types.Effect EffectDefaultValue = global::TransitRealtime.Alert.Types.Effect.UnknownEffect;
private global::TransitRealtime.Alert.Types.Effect effect_;
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public global::TransitRealtime.Alert.Types.Effect Effect {
get { if ((_hasBits0 & 2) != 0) { return effect_; } else { return EffectDefaultValue; } }
set {
_hasBits0 |= 2;
effect_ = value;
}
}
/// Gets whether the "effect" field is set
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool HasEffect {
get { return (_hasBits0 & 2) != 0; }
}
/// Clears the value of the "effect" field
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void ClearEffect() {
_hasBits0 &= ~2;
}
/// Field number for the "url" field.
public const int UrlFieldNumber = 8;
private global::TransitRealtime.TranslatedString url_;
///
/// The URL which provides additional information about the alert.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public global::TransitRealtime.TranslatedString Url {
get { return url_; }
set {
url_ = value;
}
}
/// Field number for the "header_text" field.
public const int HeaderTextFieldNumber = 10;
private global::TransitRealtime.TranslatedString headerText_;
///
/// Alert header. Contains a short summary of the alert text as plain-text.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public global::TransitRealtime.TranslatedString HeaderText {
get { return headerText_; }
set {
headerText_ = value;
}
}
/// Field number for the "description_text" field.
public const int DescriptionTextFieldNumber = 11;
private global::TransitRealtime.TranslatedString descriptionText_;
///
/// Full description for the alert as plain-text. The information in the
/// description should add to the information of the header.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public global::TransitRealtime.TranslatedString DescriptionText {
get { return descriptionText_; }
set {
descriptionText_ = value;
}
}
/// Field number for the "tts_header_text" field.
public const int TtsHeaderTextFieldNumber = 12;
private global::TransitRealtime.TranslatedString ttsHeaderText_;
///
/// Text for alert header to be used in text-to-speech implementations. This field is the text-to-speech version of header_text.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public global::TransitRealtime.TranslatedString TtsHeaderText {
get { return ttsHeaderText_; }
set {
ttsHeaderText_ = value;
}
}
/// Field number for the "tts_description_text" field.
public const int TtsDescriptionTextFieldNumber = 13;
private global::TransitRealtime.TranslatedString ttsDescriptionText_;
///
/// Text for full description for the alert to be used in text-to-speech implementations. This field is the text-to-speech version of description_text.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public global::TransitRealtime.TranslatedString TtsDescriptionText {
get { return ttsDescriptionText_; }
set {
ttsDescriptionText_ = value;
}
}
/// Field number for the "severity_level" field.
public const int SeverityLevelFieldNumber = 14;
private readonly static global::TransitRealtime.Alert.Types.SeverityLevel SeverityLevelDefaultValue = global::TransitRealtime.Alert.Types.SeverityLevel.UnknownSeverity;
private global::TransitRealtime.Alert.Types.SeverityLevel severityLevel_;
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public global::TransitRealtime.Alert.Types.SeverityLevel SeverityLevel {
get { if ((_hasBits0 & 4) != 0) { return severityLevel_; } else { return SeverityLevelDefaultValue; } }
set {
_hasBits0 |= 4;
severityLevel_ = value;
}
}
/// Gets whether the "severity_level" field is set
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool HasSeverityLevel {
get { return (_hasBits0 & 4) != 0; }
}
/// Clears the value of the "severity_level" field
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void ClearSeverityLevel() {
_hasBits0 &= ~4;
}
/// Field number for the "image" field.
public const int ImageFieldNumber = 15;
private global::TransitRealtime.TranslatedImage image_;
///
/// TranslatedImage to be displayed along the alert text. Used to explain visually the alert effect of a detour, station closure, etc. The image must enhance the understanding of the alert. Any essential information communicated within the image must also be contained in the alert text.
/// The following types of images are discouraged : image containing mainly text, marketing or branded images that add no additional information.
/// NOTE: This field is still experimental, and subject to change. It may be formally adopted in the future.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public global::TransitRealtime.TranslatedImage Image {
get { return image_; }
set {
image_ = value;
}
}
/// Field number for the "image_alternative_text" field.
public const int ImageAlternativeTextFieldNumber = 16;
private global::TransitRealtime.TranslatedString imageAlternativeText_;
///
/// Text describing the appearance of the linked image in the `image` field (e.g., in case the image can't be displayed
/// or the user can't see the image for accessibility reasons). See the HTML spec for alt image text - https://html.spec.whatwg.org/#alt.
/// NOTE: This field is still experimental, and subject to change. It may be formally adopted in the future.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public global::TransitRealtime.TranslatedString ImageAlternativeText {
get { return imageAlternativeText_; }
set {
imageAlternativeText_ = value;
}
}
/// Field number for the "cause_detail" field.
public const int CauseDetailFieldNumber = 17;
private global::TransitRealtime.TranslatedString causeDetail_;
///
/// Description of the cause of the alert that allows for agency-specific language; more specific than the Cause. If cause_detail is included, then Cause must also be included.
/// NOTE: This field is still experimental, and subject to change. It may be formally adopted in the future.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public global::TransitRealtime.TranslatedString CauseDetail {
get { return causeDetail_; }
set {
causeDetail_ = value;
}
}
/// Field number for the "effect_detail" field.
public const int EffectDetailFieldNumber = 18;
private global::TransitRealtime.TranslatedString effectDetail_;
///
/// Description of the effect of the alert that allows for agency-specific language; more specific than the Effect. If effect_detail is included, then Effect must also be included.
/// NOTE: This field is still experimental, and subject to change. It may be formally adopted in the future.
///
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public global::TransitRealtime.TranslatedString EffectDetail {
get { return effectDetail_; }
set {
effectDetail_ = value;
}
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public override bool Equals(object other) {
return Equals(other as Alert);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public bool Equals(Alert other) {
if (ReferenceEquals(other, null)) {
return false;
}
if (ReferenceEquals(other, this)) {
return true;
}
if(!activePeriod_.Equals(other.activePeriod_)) return false;
if(!informedEntity_.Equals(other.informedEntity_)) return false;
if (Cause != other.Cause) return false;
if (Effect != other.Effect) return false;
if (!object.Equals(Url, other.Url)) return false;
if (!object.Equals(HeaderText, other.HeaderText)) return false;
if (!object.Equals(DescriptionText, other.DescriptionText)) return false;
if (!object.Equals(TtsHeaderText, other.TtsHeaderText)) return false;
if (!object.Equals(TtsDescriptionText, other.TtsDescriptionText)) return false;
if (SeverityLevel != other.SeverityLevel) return false;
if (!object.Equals(Image, other.Image)) return false;
if (!object.Equals(ImageAlternativeText, other.ImageAlternativeText)) return false;
if (!object.Equals(CauseDetail, other.CauseDetail)) return false;
if (!object.Equals(EffectDetail, other.EffectDetail)) return false;
if (!Equals(_extensions, other._extensions)) {
return false;
}
return Equals(_unknownFields, other._unknownFields);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public override int GetHashCode() {
int hash = 1;
hash ^= activePeriod_.GetHashCode();
hash ^= informedEntity_.GetHashCode();
if (HasCause) hash ^= Cause.GetHashCode();
if (HasEffect) hash ^= Effect.GetHashCode();
if (url_ != null) hash ^= Url.GetHashCode();
if (headerText_ != null) hash ^= HeaderText.GetHashCode();
if (descriptionText_ != null) hash ^= DescriptionText.GetHashCode();
if (ttsHeaderText_ != null) hash ^= TtsHeaderText.GetHashCode();
if (ttsDescriptionText_ != null) hash ^= TtsDescriptionText.GetHashCode();
if (HasSeverityLevel) hash ^= SeverityLevel.GetHashCode();
if (image_ != null) hash ^= Image.GetHashCode();
if (imageAlternativeText_ != null) hash ^= ImageAlternativeText.GetHashCode();
if (causeDetail_ != null) hash ^= CauseDetail.GetHashCode();
if (effectDetail_ != null) hash ^= EffectDetail.GetHashCode();
if (_extensions != null) {
hash ^= _extensions.GetHashCode();
}
if (_unknownFields != null) {
hash ^= _unknownFields.GetHashCode();
}
return hash;
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public override string ToString() {
return pb::JsonFormatter.ToDiagnosticString(this);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void WriteTo(pb::CodedOutputStream output) {
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
output.WriteRawMessage(this);
#else
activePeriod_.WriteTo(output, _repeated_activePeriod_codec);
informedEntity_.WriteTo(output, _repeated_informedEntity_codec);
if (HasCause) {
output.WriteRawTag(48);
output.WriteEnum((int) Cause);
}
if (HasEffect) {
output.WriteRawTag(56);
output.WriteEnum((int) Effect);
}
if (url_ != null) {
output.WriteRawTag(66);
output.WriteMessage(Url);
}
if (headerText_ != null) {
output.WriteRawTag(82);
output.WriteMessage(HeaderText);
}
if (descriptionText_ != null) {
output.WriteRawTag(90);
output.WriteMessage(DescriptionText);
}
if (ttsHeaderText_ != null) {
output.WriteRawTag(98);
output.WriteMessage(TtsHeaderText);
}
if (ttsDescriptionText_ != null) {
output.WriteRawTag(106);
output.WriteMessage(TtsDescriptionText);
}
if (HasSeverityLevel) {
output.WriteRawTag(112);
output.WriteEnum((int) SeverityLevel);
}
if (image_ != null) {
output.WriteRawTag(122);
output.WriteMessage(Image);
}
if (imageAlternativeText_ != null) {
output.WriteRawTag(130, 1);
output.WriteMessage(ImageAlternativeText);
}
if (causeDetail_ != null) {
output.WriteRawTag(138, 1);
output.WriteMessage(CauseDetail);
}
if (effectDetail_ != null) {
output.WriteRawTag(146, 1);
output.WriteMessage(EffectDetail);
}
if (_extensions != null) {
_extensions.WriteTo(output);
}
if (_unknownFields != null) {
_unknownFields.WriteTo(output);
}
#endif
}
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
activePeriod_.WriteTo(ref output, _repeated_activePeriod_codec);
informedEntity_.WriteTo(ref output, _repeated_informedEntity_codec);
if (HasCause) {
output.WriteRawTag(48);
output.WriteEnum((int) Cause);
}
if (HasEffect) {
output.WriteRawTag(56);
output.WriteEnum((int) Effect);
}
if (url_ != null) {
output.WriteRawTag(66);
output.WriteMessage(Url);
}
if (headerText_ != null) {
output.WriteRawTag(82);
output.WriteMessage(HeaderText);
}
if (descriptionText_ != null) {
output.WriteRawTag(90);
output.WriteMessage(DescriptionText);
}
if (ttsHeaderText_ != null) {
output.WriteRawTag(98);
output.WriteMessage(TtsHeaderText);
}
if (ttsDescriptionText_ != null) {
output.WriteRawTag(106);
output.WriteMessage(TtsDescriptionText);
}
if (HasSeverityLevel) {
output.WriteRawTag(112);
output.WriteEnum((int) SeverityLevel);
}
if (image_ != null) {
output.WriteRawTag(122);
output.WriteMessage(Image);
}
if (imageAlternativeText_ != null) {
output.WriteRawTag(130, 1);
output.WriteMessage(ImageAlternativeText);
}
if (causeDetail_ != null) {
output.WriteRawTag(138, 1);
output.WriteMessage(CauseDetail);
}
if (effectDetail_ != null) {
output.WriteRawTag(146, 1);
output.WriteMessage(EffectDetail);
}
if (_extensions != null) {
_extensions.WriteTo(ref output);
}
if (_unknownFields != null) {
_unknownFields.WriteTo(ref output);
}
}
#endif
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public int CalculateSize() {
int size = 0;
size += activePeriod_.CalculateSize(_repeated_activePeriod_codec);
size += informedEntity_.CalculateSize(_repeated_informedEntity_codec);
if (HasCause) {
size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) Cause);
}
if (HasEffect) {
size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) Effect);
}
if (url_ != null) {
size += 1 + pb::CodedOutputStream.ComputeMessageSize(Url);
}
if (headerText_ != null) {
size += 1 + pb::CodedOutputStream.ComputeMessageSize(HeaderText);
}
if (descriptionText_ != null) {
size += 1 + pb::CodedOutputStream.ComputeMessageSize(DescriptionText);
}
if (ttsHeaderText_ != null) {
size += 1 + pb::CodedOutputStream.ComputeMessageSize(TtsHeaderText);
}
if (ttsDescriptionText_ != null) {
size += 1 + pb::CodedOutputStream.ComputeMessageSize(TtsDescriptionText);
}
if (HasSeverityLevel) {
size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) SeverityLevel);
}
if (image_ != null) {
size += 1 + pb::CodedOutputStream.ComputeMessageSize(Image);
}
if (imageAlternativeText_ != null) {
size += 2 + pb::CodedOutputStream.ComputeMessageSize(ImageAlternativeText);
}
if (causeDetail_ != null) {
size += 2 + pb::CodedOutputStream.ComputeMessageSize(CauseDetail);
}
if (effectDetail_ != null) {
size += 2 + pb::CodedOutputStream.ComputeMessageSize(EffectDetail);
}
if (_extensions != null) {
size += _extensions.CalculateSize();
}
if (_unknownFields != null) {
size += _unknownFields.CalculateSize();
}
return size;
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void MergeFrom(Alert other) {
if (other == null) {
return;
}
activePeriod_.Add(other.activePeriod_);
informedEntity_.Add(other.informedEntity_);
if (other.HasCause) {
Cause = other.Cause;
}
if (other.HasEffect) {
Effect = other.Effect;
}
if (other.url_ != null) {
if (url_ == null) {
Url = new global::TransitRealtime.TranslatedString();
}
Url.MergeFrom(other.Url);
}
if (other.headerText_ != null) {
if (headerText_ == null) {
HeaderText = new global::TransitRealtime.TranslatedString();
}
HeaderText.MergeFrom(other.HeaderText);
}
if (other.descriptionText_ != null) {
if (descriptionText_ == null) {
DescriptionText = new global::TransitRealtime.TranslatedString();
}
DescriptionText.MergeFrom(other.DescriptionText);
}
if (other.ttsHeaderText_ != null) {
if (ttsHeaderText_ == null) {
TtsHeaderText = new global::TransitRealtime.TranslatedString();
}
TtsHeaderText.MergeFrom(other.TtsHeaderText);
}
if (other.ttsDescriptionText_ != null) {
if (ttsDescriptionText_ == null) {
TtsDescriptionText = new global::TransitRealtime.TranslatedString();
}
TtsDescriptionText.MergeFrom(other.TtsDescriptionText);
}
if (other.HasSeverityLevel) {
SeverityLevel = other.SeverityLevel;
}
if (other.image_ != null) {
if (image_ == null) {
Image = new global::TransitRealtime.TranslatedImage();
}
Image.MergeFrom(other.Image);
}
if (other.imageAlternativeText_ != null) {
if (imageAlternativeText_ == null) {
ImageAlternativeText = new global::TransitRealtime.TranslatedString();
}
ImageAlternativeText.MergeFrom(other.ImageAlternativeText);
}
if (other.causeDetail_ != null) {
if (causeDetail_ == null) {
CauseDetail = new global::TransitRealtime.TranslatedString();
}
CauseDetail.MergeFrom(other.CauseDetail);
}
if (other.effectDetail_ != null) {
if (effectDetail_ == null) {
EffectDetail = new global::TransitRealtime.TranslatedString();
}
EffectDetail.MergeFrom(other.EffectDetail);
}
pb::ExtensionSet.MergeFrom(ref _extensions, other._extensions);
_unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
public void MergeFrom(pb::CodedInputStream input) {
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
input.ReadRawMessage(this);
#else
uint tag;
while ((tag = input.ReadTag()) != 0) {
if ((tag & 7) == 4) {
// Abort on any end group tag.
return;
}
switch(tag) {
default:
if (!pb::ExtensionSet.TryMergeFieldFrom(ref _extensions, input)) {
_unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
}
break;
case 10: {
activePeriod_.AddEntriesFrom(input, _repeated_activePeriod_codec);
break;
}
case 42: {
informedEntity_.AddEntriesFrom(input, _repeated_informedEntity_codec);
break;
}
case 48: {
Cause = (global::TransitRealtime.Alert.Types.Cause) input.ReadEnum();
break;
}
case 56: {
Effect = (global::TransitRealtime.Alert.Types.Effect) input.ReadEnum();
break;
}
case 66: {
if (url_ == null) {
Url = new global::TransitRealtime.TranslatedString();
}
input.ReadMessage(Url);
break;
}
case 82: {
if (headerText_ == null) {
HeaderText = new global::TransitRealtime.TranslatedString();
}
input.ReadMessage(HeaderText);
break;
}
case 90: {
if (descriptionText_ == null) {
DescriptionText = new global::TransitRealtime.TranslatedString();
}
input.ReadMessage(DescriptionText);
break;
}
case 98: {
if (ttsHeaderText_ == null) {
TtsHeaderText = new global::TransitRealtime.TranslatedString();
}
input.ReadMessage(TtsHeaderText);
break;
}
case 106: {
if (ttsDescriptionText_ == null) {
TtsDescriptionText = new global::TransitRealtime.TranslatedString();
}
input.ReadMessage(TtsDescriptionText);
break;
}
case 112: {
SeverityLevel = (global::TransitRealtime.Alert.Types.SeverityLevel) input.ReadEnum();
break;
}
case 122: {
if (image_ == null) {
Image = new global::TransitRealtime.TranslatedImage();
}
input.ReadMessage(Image);
break;
}
case 130: {
if (imageAlternativeText_ == null) {
ImageAlternativeText = new global::TransitRealtime.TranslatedString();
}
input.ReadMessage(ImageAlternativeText);
break;
}
case 138: {
if (causeDetail_ == null) {
CauseDetail = new global::TransitRealtime.TranslatedString();
}
input.ReadMessage(CauseDetail);
break;
}
case 146: {
if (effectDetail_ == null) {
EffectDetail = new global::TransitRealtime.TranslatedString();
}
input.ReadMessage(EffectDetail);
break;
}
}
}
#endif
}
#if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
[global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
uint tag;
while ((tag = input.ReadTag()) != 0) {
if ((tag & 7) == 4) {
// Abort on any end group tag.
return;
}
switch(tag) {
default:
if (!pb::ExtensionSet.TryMergeFieldFrom(ref _extensions, ref input)) {
_unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
}
break;
case 10: {
activePeriod_.AddEntriesFrom(ref input, _repeated_activePeriod_codec);
break;
}
case 42: {
informedEntity_.AddEntriesFrom(ref input, _repeated_informedEntity_codec);
break;
}
case 48: {
Cause = (global::TransitRealtime.Alert.Types.Cause) input.ReadEnum();
break;
}
case 56: {
Effect = (global::TransitRealtime.Alert.Types.Effect) input.ReadEnum();
break;
}
case 66: {
if (url_ == null) {
Url = new global::TransitRealtime.TranslatedString();
}
input.ReadMessage(Url);
break;
}
case 82: {
if (headerText_ == null) {
HeaderText = new global::TransitRealtime.TranslatedString();
}
input.ReadMessage(HeaderText);
break;
}
case 90: {
if (descriptionText_ == null) {
DescriptionText = new global::TransitRealtime.TranslatedString();
}
input.ReadMessage(DescriptionText);
break;
}
case 98: {
if (ttsHeaderText_ == null) {
TtsHeaderText = new global::TransitRealtime.TranslatedString();
}
input.ReadMessage(TtsHeaderText);
break;
}
case 106: {
if (ttsDescriptionText_ == null) {
TtsDescriptionText = new global::TransitRealtime.TranslatedString();
}
input.ReadMessage(TtsDescriptionText);
break;
}
case 112: {
SeverityLevel = (global::TransitRealtime.Alert.Types.SeverityLevel) input.ReadEnum();
break;
}
case 122: {
if (image_ == null) {
Image = new global::TransitRealtime.TranslatedImage();
}
input.ReadMessage(Image);
break;
}
case 130: {
if (imageAlternativeText_ == null) {
ImageAlternativeText = new global::TransitRealtime.TranslatedString();
}
input.ReadMessage(ImageAlternativeText);
break;
}
case 138: {
if (causeDetail_ == null) {
CauseDetail = new global::TransitRealtime.TranslatedString();
}
input.ReadMessage(CauseDetail);
break;
}
case 146: {
if (effectDetail_ == null) {
EffectDetail = new global::TransitRealtime.TranslatedString();
}
input.ReadMessage(EffectDetail);
break;
}
}
}
}
#endif
public TValue GetExtension(pb::Extension extension) {
return pb::ExtensionSet.Get(ref _extensions, extension);
}
public pbc::RepeatedField GetExtension(pb::RepeatedExtension extension) {
return pb::ExtensionSet.Get(ref _extensions, extension);
}
public pbc::RepeatedField GetOrInitializeExtension(pb::RepeatedExtension extension) {
return pb::ExtensionSet.GetOrInitialize(ref _extensions, extension);
}
public void SetExtension