@class VCReportingHistogram, VCReportingHistogram2D, NSString, NSDate, NSMutableDictionary, NSDictionary, NSObject, NSNumber; @protocol SegmentStatsDelegate, OS_nw_activity; @interface MultiwaySegment : NSObject { int _interval; int _frequency; double _averageTargetBitrateSum; unsigned int _averageTargetBitrateReportCounter; double _uplinkActualBitrateSum; unsigned int _uplinkActualBitrateCounter; double _uplinkBWEstimationSum; unsigned int _uplinkBWEstimationCounter; double _receiveBitrateSum; unsigned int _receiveBitrateCounter; double _roundTripTimeSum; unsigned int _roundTripTimeReportCounter; BOOL _hasReported; NSDate *_conversationTimeBase; int _startDate; id<SegmentStatsDelegate> _delegate; BOOL _useNwActivitySubmitMetrics; NSObject<OS_nw_activity> *_nwActivity; BOOL _isNWActivityReportingEnabled; double _duplicationMaxNoRemotePacketTime; double _duplicationMaxRemoteNoRemotePacketTime; } @property (readonly) NSMutableDictionary *fecStatsDict; @property (readonly) VCReportingHistogram *lossPattern; @property (readonly) VCReportingHistogram2D *lossHistogram; @property (readonly) VCReportingHistogram2D *lossFecHistogram; @property (copy) NSString *suggestedLinkTypeCombo; @property unsigned int localAlertStateSwitchCount; @property unsigned int remoteAlertStateSwitchCount; @property int dataPath; @property unsigned int rateControlSmartBrakeTrialVersion; @property unsigned char rateControlExperimentVersion; @property unsigned char rateControlExperimentGroupIndex; @property BOOL reportRateControlExperiment; @property (readonly) NSString *segmentName; @property (readonly) NSString *previousSegmentName; @property (readonly) unsigned int segmentStreamGroups; @property (readonly) unsigned int previousSegmentStreamGroups; @property (readonly) NSMutableDictionary *activeTemporalTiersBitmapStreams; @property int duration; @property int adjustedDuration; @property (readonly) double averageTargetBitrate; @property unsigned int totalPacketsReceived; @property unsigned int totalPacketsLost; @property unsigned int totalPacketsSent; @property unsigned long long totalBytesSent; @property unsigned long long totalBytesReceived; @property BOOL is5GHz; @property (readonly) VCReportingHistogram *RTT; @property (readonly) VCReportingHistogram *PLR; @property (readonly) VCReportingHistogram *TBR; @property unsigned int localSwitches; @property BOOL isOneToOneMode; @property unsigned int callMode; @property unsigned int callDeviceRole; @property unsigned int callTransportType; @property BOOL isInitiator; @property (copy) NSString *remoteOSBuild; @property unsigned int mediaStallCount; @property unsigned int negotiatedSwitches; @property unsigned int remoteSwitches; @property (copy) NSString *duplicationConnectionConfig; @property (copy) NSString *duplicationConnectionFamily; @property unsigned char duplicationType; @property double rttMeanTotalDelta; @property unsigned char plrTierTotalDelta; @property unsigned int dynamicDupeLinkCount; @property double primaryConnHealthAllowedDelay; @property (nonatomic) struct tagVCReportingClientExperimentSettings { BOOL networkConditionMonitoringClientExperimentEnabled; BOOL motionBasedDuplicationClientExperimentEnabled; } reportingClientExperimentSettings; @property unsigned char coreMotionActivityValue; @property unsigned char coreMotionActivityConfidence; @property unsigned char linkPreferSuggestion; @property unsigned char linkConfidenceScore; @property unsigned char linkPreferDecision; @property unsigned char linkIPPreference; @property (copy) NSNumber *IPVersion; @property BOOL isLocalCelltechDirty; @property (copy) NSNumber *localCelltech; @property (copy) NSNumber *remoteCelltech; @property (copy) NSNumber *isLocalExpensive; @property (copy) NSNumber *isRemoteExpensive; @property (copy) NSNumber *maxNegotiatedUplinkBitrate; @property (copy) NSNumber *maxNegotiatedDownlinkBitrate; @property unsigned int linkProbingVersion; @property unsigned int remoteLinkProbingVersion; @property unsigned int ecnEnabledCount; @property unsigned int ecnECT1Count; @property unsigned int ecnCECount; @property unsigned int networkCongestedCount; @property unsigned int totalMBLRampDownCount; @property unsigned int totalSuddenBandwidthDropCount; @property (copy) NSString *activeConnectionRegistry; @property BOOL isApplePersonalHotspot; @property BOOL isQUICPod; @property BOOL isRemoteQUICPod; @property unsigned int mediaQueueSchedulePolicy; @property unsigned int remoteMediaQueueSchedulePolicy; @property (copy) NSDictionary *qrExperiments; @property (copy) NSString *relayProtocolStack; @property (copy) NSString *channelProtocolStack; @property unsigned short connectionProtocolType; + (void)storeToReport:(id)a0 value:(id)a1 key:(struct __CFString { } *)a2 streamGroup:(id)a3; - (void)dealloc; - (id)delegate; - (void)setDelegate:(id)a0; - (double)packetLossRate; - (unsigned int)RTPeriod; - (void)_releaseProtocolDescription; - (void)addCelltechTelemetryToDictionary:(id)a0; - (void)addCommonSegmentTelemetry:(id)a0; - (void)addProtocolStackDescriptionTelemetry:(id)a0; - (void)addQRServerTelemetryToDictionary:(id)a0; - (void)addRateControlExperimentInfoToSegmentReport:(id)a0; - (void)assertCleanCellTech; - (double)averageBWE; - (double)averageReceiveBitrate; - (double)averageRoundTripTime; - (double)averageSendBitrate; - (void)complete_and_release_nw_activity:(int)a0; - (id)initWithSegmentName:(id)a0 previousSegmentName:(id)a1 segmentStreamGroups:(unsigned int)a2 previousSegmentStreamGroups:(unsigned int)a3 nwActivity:(id)a4 localSwitches:(unsigned int)a5 conversationTimeBase:(id)a6 delegate:(id)a7; - (void)processDuplicationConnectionTelemetry:(id)a0 type:(unsigned short)a1; - (void)processReceiveBitrate:(unsigned int)a0; - (void)processRoundTripTime:(unsigned int)a0; - (void)processTargetBitrate:(unsigned int)a0; - (void)processUplinkActualBitrate:(unsigned int)a0; - (void)processUplinkBWEstimation:(unsigned int)a0; - (id)reportingClientExperimentSettingsDictionary; - (id)segmentReport; - (void)setNWActivityReportingEnabled:(BOOL)a0; @end