code: function(name, url, options) {
          
          this.tileSize = new OpenLayers.Size(512, 512);
  
          // parameters
          this.params = OpenLayers.Util.applyDefaults(
              {ServiceName: options.serviceName},
              this.DEFAULT_PARAMS
          );
          this.options = OpenLayers.Util.applyDefaults(
              options, this.DEFAULT_OPTIONS
          );
            
          OpenLayers.Layer.Grid.prototype.initialize.apply(
              this, [name, url, this.params, options]
          );
  
          //layer is transparent        
          if (this.transparent) {
              
              // unless explicitly set in options, make layer an overlay
              if (!this.isBaseLayer) {
                  this.isBaseLayer = false;
              } 
              
              // jpegs can never be transparent, so intelligently switch the 
              //  format, depending on the browser's capabilities
              if (this.format == "image/jpeg") {
                  this.format = OpenLayers.Util.alphaHack() ? "image/gif" : "image/png";
              }
          }
  
          // create an empty layer list if no layers specified in the options
          if (this.options.layers === null) {
              this.options.layers = [];
          }
      }
docs: Constructor: OpenLayers.Layer.ArcIMS
  Create a new ArcIMS layer object.
  
  Example:
  (code)
  var arcims = new OpenLayers.Layer.ArcIMS(
  "Global Sample",
  "http://sample.avencia.com/servlet/com.esri.esrimap.Esrimap",
  {
  service: "OpenLayers_Sample",
  layers: [
  // layers to manipulate
  {id: "1", visible: true}
  ]
  }
  );
  (end)
  
  Parameters:
  name - {String} A name for the layer
  url - {String} Base url for the ArcIMS server
  options - {Object} Optional object with properties to be set on the
  layer.