code: function MediaLatencyStat(mediaLatencyStatDict){
    if(!(this instanceof MediaLatencyStat))
      return new MediaLatencyStat(mediaLatencyStatDict)
  
    mediaLatencyStatDict = mediaLatencyStatDict || {}
  
    // Check mediaLatencyStatDict has the required fields
    // 
    // checkType('String', 'mediaLatencyStatDict.name', mediaLatencyStatDict.name, {required: true});
    //  
    // checkType('MediaType', 'mediaLatencyStatDict.type', mediaLatencyStatDict.type, {required: true});
    //  
    // checkType('double', 'mediaLatencyStatDict.avg', mediaLatencyStatDict.avg, {required: true});
    //  
  
    // Init parent class
    MediaLatencyStat.super_.call(this, mediaLatencyStatDict)
  
    // Set object properties
    Object.defineProperties(this, {
      name: {
        writable: true,
        enumerable: true,
        value: mediaLatencyStatDict.name
      },
      type: {
        writable: true,
        enumerable: true,
        value: mediaLatencyStatDict.type
      },
      avg: {
        writable: true,
        enumerable: true,
        value: mediaLatencyStatDict.avg
      }
    })
  }
docs: A dictionary that represents the stats gathered.
  
  @constructor module:core/complexTypes.MediaLatencyStat
  
  @property {external:String} name
  The identifier of the media stream
  @property {module:core/complexTypes.MediaType} type
  Type of media stream
  @property {external:double} avg
  The average time that buffers take to get on the input pad of this element