code: function (displayName) {
  
              /**
               * This layer's display name.
               * @type {String}
               * @default "Layer"
               */
              this.displayName = displayName ? displayName : "Layer";
  
              /**
               * Indicates whether to display this layer.
               * @type {Boolean}
               * @default true
               */
              this.enabled = true;
  
              /**
               * Indicates whether this layer is pickable.
               * @type {Boolean}
               * @default true
               */
              this.pickEnabled = true;
  
              /**
               * This layer's opacity, which is combined with the opacity of shapes within layers.
               * Opacity is in the range [0, 1], with 1 indicating fully opaque.
               * @type {Number}
               * @default 1
               */
              this.opacity = 1;
  
              /**
               * The eye altitude above which this layer is displayed, in meters.
               * @type {Number}
               * @default -Number.MAX_VALUE (always displayed)
               */
              this.minActiveAltitude = -Number.MAX_VALUE;
  
              /**
               * The eye altitude below which this layer is displayed, in meters.
               * @type {Number}
               * @default Number.MAX_VALUE (always displayed)
               */
              this.maxActiveAltitude = Number.MAX_VALUE;
  
              /**
               * Indicates whether elements of this layer were drawn in the most recently generated frame.
               * @type {Boolean}
               * @readonly
               */
              this.inCurrentFrame = false;
  
              /**
               * The time to display. This property selects the layer contents that represents the specified time.
               * If null, layer-type dependent contents are displayed.
               * @type {Date}
               */
              this.time = null;
          }
docs: Constructs a layer. This constructor is meant to be called by subclasses and not directly by an application.
  @alias Layer
  @constructor
  @classdesc Provides an abstract base class for layer implementations. This class is not meant to be instantiated
  directly.