code: function(options) {
    CesiumClock.call(this, options);
  
    var baseProperty = Object.getOwnPropertyDescriptor(
      CesiumClock.prototype,
      "currentTime"
    );
    Object.defineProperty(this, "currentTime", {
      get: function() {
        return baseProperty.get.call(this);
      },
      set: function(newTime) {
        var gap = this.determineGap(newTime);
        baseProperty.set.call(this, defined(gap) ? gap.stop : newTime);
      }
    });
  
    this.onTick.addEventListener(function() {
      var newTime = this.currentTime;
      var gap = this.determineGap(newTime);
      this._currentTime = defined(gap) ? gap.stop : newTime;
    }, this);
  }
docs: Extension of the standard Clock provided by Cesium customised to deal with Terria-level abstractions like
  {@link CatalogItem}s.
  @param options see {@link terriajs-cesium/Source/Core/Clock}
  @constructor