code: public Object getDataElements(int rgb, Object pixel) {
          int alpha = (rgb>>>24);
  
          int pix;
          if (alpha < ALPHA_THRESHOLD && getTransparentPixel() != -1) {
              pix = getTransparentPixel();
          }
          else {
              int color = rgb & RGB_MASK;
              if (color == WHITE && whiteIndex != -1) {
                  pix = whiteIndex;
              }
              else {
                  pix = inverseMap.getIndexNearest(color);
              }
          }
  
          return installpixel(pixel, pix);
      }
docs: Returns a data element array representation of a pixel in this
  ColorModel, given an integer pixel representation in the
  default RGB color model.  This array can then be passed to the
  {@link java.awt.image.WritableRaster#setDataElements(int, int, Object) setDataElements}
  method of a {@link java.awt.image.WritableRaster} object.  If the pixel variable is
  {@code null}, a new array is allocated.  If {@code pixel}
  is not {@code null}, it must be
  a primitive array of type {@code transferType}; otherwise, a
  {@code ClassCastException} is thrown.  An
  {@code ArrayIndexOutOfBoundsException} is
  thrown if {@code pixel} is not large enough to hold a pixel
  value for this {@code ColorModel}.  The pixel array is returned.
  <p>
  Since {@code OpaqueIndexColorModel} can be subclassed, subclasses
  inherit the implementation of this method and if they don't
  override it then they throw an exception if they use an
  unsupported {@code transferType}.
  
  #param rgb the integer pixel representation in the default RGB
  color model
  #param pixel the specified pixel
  #return an array representation of the specified pixel in this
  {@code OpaqueIndexColorModel}.
  #throws ClassCastException if {@code pixel}
  is not a primitive array of type {@code transferType}
  #throws ArrayIndexOutOfBoundsException if
  {@code pixel} is not large enough to hold a pixel value
  for this {@code ColorModel}
  #throws UnsupportedOperationException if {@code transferType}
  is invalid
  @see java.awt.image.WritableRaster#setDataElements
  @see java.awt.image.SampleModel#setDataElements