mirror of
				https://github.com/pion/webrtc.git
				synced 2025-10-31 18:52:55 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			64 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			64 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
| // +build !js
 | |
| 
 | |
| package webrtc
 | |
| 
 | |
| // GetConnectionStats is a helper method to return the associated stats for a given PeerConnection
 | |
| func (r StatsReport) GetConnectionStats(conn *PeerConnection) (PeerConnectionStats, bool) {
 | |
| 	statsID := conn.getStatsID()
 | |
| 	stats, ok := r[statsID]
 | |
| 	if !ok {
 | |
| 		return PeerConnectionStats{}, false
 | |
| 	}
 | |
| 
 | |
| 	pcStats, ok := stats.(PeerConnectionStats)
 | |
| 	if !ok {
 | |
| 		return PeerConnectionStats{}, false
 | |
| 	}
 | |
| 	return pcStats, true
 | |
| }
 | |
| 
 | |
| // GetDataChannelStats is a helper method to return the associated stats for a given DataChannel
 | |
| func (r StatsReport) GetDataChannelStats(dc *DataChannel) (DataChannelStats, bool) {
 | |
| 	statsID := dc.getStatsID()
 | |
| 	stats, ok := r[statsID]
 | |
| 	if !ok {
 | |
| 		return DataChannelStats{}, false
 | |
| 	}
 | |
| 
 | |
| 	dcStats, ok := stats.(DataChannelStats)
 | |
| 	if !ok {
 | |
| 		return DataChannelStats{}, false
 | |
| 	}
 | |
| 	return dcStats, true
 | |
| }
 | |
| 
 | |
| // GetICECandidateStats is a helper method to return the associated stats for a given ICECandidate
 | |
| func (r StatsReport) GetICECandidateStats(c *ICECandidate) (ICECandidateStats, bool) {
 | |
| 	statsID := c.statsID
 | |
| 	stats, ok := r[statsID]
 | |
| 	if !ok {
 | |
| 		return ICECandidateStats{}, false
 | |
| 	}
 | |
| 
 | |
| 	candidateStats, ok := stats.(ICECandidateStats)
 | |
| 	if !ok {
 | |
| 		return ICECandidateStats{}, false
 | |
| 	}
 | |
| 	return candidateStats, true
 | |
| }
 | |
| 
 | |
| // GetICECandidatePairStats is a helper method to return the associated stats for a given ICECandidatePair
 | |
| func (r StatsReport) GetICECandidatePairStats(c *ICECandidatePair) (ICECandidatePairStats, bool) {
 | |
| 	statsID := c.statsID
 | |
| 	stats, ok := r[statsID]
 | |
| 	if !ok {
 | |
| 		return ICECandidatePairStats{}, false
 | |
| 	}
 | |
| 
 | |
| 	candidateStats, ok := stats.(ICECandidatePairStats)
 | |
| 	if !ok {
 | |
| 		return ICECandidatePairStats{}, false
 | |
| 	}
 | |
| 	return candidateStats, true
 | |
| }
 | 
