From 113ac2daa1bd0ed73df06f6d93538ec99162c48e Mon Sep 17 00:00:00 2001 From: Evan Debenham Date: Tue, 13 Jun 2017 18:27:22 -0400 Subject: [PATCH] v0.6.1: added support for bundling and unbundling float arrays --- .../main/java/com/watabou/utils/Bundle.java | 37 ++++++++++++++++--- 1 file changed, 32 insertions(+), 5 deletions(-) diff --git a/SPD-classes/src/main/java/com/watabou/utils/Bundle.java b/SPD-classes/src/main/java/com/watabou/utils/Bundle.java index ccff3c566..06d6f0cb0 100644 --- a/SPD-classes/src/main/java/com/watabou/utils/Bundle.java +++ b/SPD-classes/src/main/java/com/watabou/utils/Bundle.java @@ -21,6 +21,11 @@ package com.watabou.utils; +import org.json.JSONArray; +import org.json.JSONException; +import org.json.JSONObject; +import org.json.JSONTokener; + import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IOException; @@ -36,11 +41,6 @@ import java.util.HashMap; import java.util.zip.GZIPInputStream; import java.util.zip.GZIPOutputStream; -import org.json.JSONArray; -import org.json.JSONException; -import org.json.JSONObject; -import org.json.JSONTokener; - public class Bundle { private static final String CLASS_NAME = "__className"; @@ -166,6 +166,21 @@ public class Bundle { } } + public float[] getFloatArray( String key ) { + try { + JSONArray array = data.getJSONArray( key ); + int length = array.length(); + float[] result = new float[length]; + for (int i=0; i < length; i++) { + result[i] = (float)array.optDouble( i, 0.0 ); + } + return result; + } catch (JSONException e) { + reportException(e); + return null; + } + } + public boolean[] getBooleanArray( String key ) { try { JSONArray array = data.getJSONArray( key ); @@ -329,6 +344,18 @@ public class Bundle { } } + public void put( String key, float[] array ) { + try { + JSONArray jsonArray = new JSONArray(); + for (int i=0; i < array.length; i++) { + jsonArray.put( i, array[i] ); + } + data.put( key, jsonArray ); + } catch (JSONException e) { + reportException(e); + } + } + public void put( String key, boolean[] array ) { try { JSONArray jsonArray = new JSONArray();