Skip to content

Commit

Permalink
Add buckets to the byte array params.
Browse files Browse the repository at this point in the history
  • Loading branch information
tyronen committed Jun 28, 2015
1 parent eceacac commit 9614559
Showing 1 changed file with 12 additions and 2 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -9,25 +9,35 @@

package com.facebook.imagepipeline.memory;

import android.util.SparseIntArray;

import com.facebook.common.util.ByteConstants;

/**
* Provides pool parameters ({@link PoolParams}) for {@link SharedByteArray}
*/
public class DefaultSharedByteArrayParams {
// the default max buffer size we'll use
private static final int DEFAULT_MAX_BYTE_ARRAY_SIZE = 4 * ByteConstants.MB;
public static final int DEFAULT_MAX_BYTE_ARRAY_SIZE = 4 * ByteConstants.MB;
// the min buffer size we'll use
private static final int DEFAULT_MIN_BYTE_ARRAY_SIZE = 128 * ByteConstants.KB;

private DefaultSharedByteArrayParams() {
}

public static SparseIntArray generateBuckets(int min, int max) {
SparseIntArray buckets = new SparseIntArray();
for (int i = min; i <= max; i*=2) {
buckets.put(i, 1);
}
return buckets;
}

public static PoolParams get() {
return new PoolParams(
DEFAULT_MAX_BYTE_ARRAY_SIZE,
DEFAULT_MAX_BYTE_ARRAY_SIZE,
null,
generateBuckets(DEFAULT_MIN_BYTE_ARRAY_SIZE, DEFAULT_MAX_BYTE_ARRAY_SIZE),
DEFAULT_MIN_BYTE_ARRAY_SIZE,
DEFAULT_MAX_BYTE_ARRAY_SIZE
);
Expand Down

0 comments on commit 9614559

Please sign in to comment.