package com.google.zxing.oned;

import com.google.zxing.BarcodeFormat;
import com.google.zxing.EncodeHintType;
import com.google.zxing.Writer;
import com.google.zxing.WriterException;
import com.google.zxing.common.BitMatrix;
import java.util.Map;

public abstract class OneDimensionalCodeWriter
  implements Writer
{
  protected static int appendPattern(boolean[] paramArrayOfBoolean, int paramInt, int[] paramArrayOfInt, boolean paramBoolean)
  {
    boolean bool = paramBoolean;
    int i = 0;
    int j = paramArrayOfInt.length;
    int k = 0;
    if (k >= j)
      return i;
    int m = paramArrayOfInt[k];
    int n = 0;
    int i1 = paramInt;
    label35: if (n >= m)
    {
      i += m;
      if (!bool)
        break label88;
    }
    label88: for (bool = false; ; bool = true)
    {
      k++;
      paramInt = i1;
      break;
      int i2 = i1 + 1;
      paramArrayOfBoolean[i1] = bool;
      n++;
      i1 = i2;
      break label35;
    }
  }

  private static BitMatrix renderResult(boolean[] paramArrayOfBoolean, int paramInt1, int paramInt2, int paramInt3)
  {
    int i = paramArrayOfBoolean.length;
    int j = i + paramInt3;
    int k = Math.max(paramInt1, j);
    int m = Math.max(1, paramInt2);
    int n = k / j;
    int i1 = (k - i * n) / 2;
    BitMatrix localBitMatrix = new BitMatrix(k, m);
    int i2 = 0;
    int i3 = i1;
    while (true)
    {
      if (i2 >= i)
        return localBitMatrix;
      if (paramArrayOfBoolean[i2] != 0)
        localBitMatrix.setRegion(i3, 0, n, m);
      i2++;
      i3 += n;
    }
  }

  public final BitMatrix encode(String paramString, BarcodeFormat paramBarcodeFormat, int paramInt1, int paramInt2)
    throws WriterException
  {
    return encode(paramString, paramBarcodeFormat, paramInt1, paramInt2, null);
  }

  public BitMatrix encode(String paramString, BarcodeFormat paramBarcodeFormat, int paramInt1, int paramInt2, Map<EncodeHintType, ?> paramMap)
    throws WriterException
  {
    if (paramString.isEmpty())
      throw new IllegalArgumentException("Found empty contents");
    if ((paramInt1 < 0) || (paramInt2 < 0))
      throw new IllegalArgumentException("Negative size is not allowed. Input: " + paramInt1 + 'x' + paramInt2);
    int i = getDefaultMargin();
    if ((paramMap != null) && (paramMap.containsKey(EncodeHintType.MARGIN)))
      i = Integer.parseInt(paramMap.get(EncodeHintType.MARGIN).toString());
    return renderResult(encode(paramString), paramInt1, paramInt2, i);
  }

  public abstract boolean[] encode(String paramString);

  public int getDefaultMargin()
  {
    return 10;
  }
}

/* Location:           C:\Documents and Settings\Cesar Cabello Cea\Mis documentos\Downloads\apk-downloader\com.ikea.kompis-6_dex2jar.jar
 * Qualified Name:     com.google.zxing.oned.OneDimensionalCodeWriter
 * JD-Core Version:    0.6.2
 */