summaryrefslogtreecommitdiffstats
path: root/jni_jpegstream/src/stream_wrapper.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'jni_jpegstream/src/stream_wrapper.cpp')
-rw-r--r--jni_jpegstream/src/stream_wrapper.cpp97
1 files changed, 0 insertions, 97 deletions
diff --git a/jni_jpegstream/src/stream_wrapper.cpp b/jni_jpegstream/src/stream_wrapper.cpp
deleted file mode 100644
index 049d84f67..000000000
--- a/jni_jpegstream/src/stream_wrapper.cpp
+++ /dev/null
@@ -1,97 +0,0 @@
-/*
- * Copyright (C) 2013 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include "stream_wrapper.h"
-
-const int32_t StreamWrapper::END_OF_STREAM = -1;
-const int32_t StreamWrapper::DEFAULT_BUFFER_SIZE = 1 << 16; // 64Kb
-
-StreamWrapper::StreamWrapper() : mEnv(NULL),
- mStream(NULL),
- mByteArray(NULL),
- mBytes(NULL),
- mByteArrayLen(0) {}
-
-StreamWrapper::~StreamWrapper() {
- cleanup();
-}
-
-void StreamWrapper::updateEnv(JNIEnv *env) {
- if (env == NULL) {
- LOGE("Cannot update StreamWrapper with a null JNIEnv pointer!");
- return;
- }
- mEnv = env;
-}
-
-bool StreamWrapper::init(JNIEnv *env, jobject stream) {
- if (mEnv != NULL) {
- LOGW("StreamWrapper already initialized!");
- return false;
- }
- mEnv = env;
- mStream = env->NewGlobalRef(stream);
- if (mStream == NULL || env->ExceptionCheck()) {
- cleanup();
- return false;
- }
- mByteArrayLen = DEFAULT_BUFFER_SIZE;
- jbyteArray tmp = env->NewByteArray(getBufferSize());
- if (tmp == NULL || env->ExceptionCheck()){
- cleanup();
- return false;
- }
- mByteArray = reinterpret_cast<jbyteArray>(env->NewGlobalRef(tmp));
- if (mByteArray == NULL || env->ExceptionCheck()){
- cleanup();
- return false;
- }
- mBytes = env->GetByteArrayElements(mByteArray, NULL);
- if (mBytes == NULL || env->ExceptionCheck()){
- cleanup();
- return false;
- }
- return true;
-}
-
-void StreamWrapper::cleanup() {
- if (mEnv != NULL) {
- if (mStream != NULL) {
- mEnv->DeleteGlobalRef(mStream);
- mStream = NULL;
- }
- if (mByteArray != NULL) {
- if (mBytes != NULL) {
- mEnv->ReleaseByteArrayElements(mByteArray, mBytes, JNI_ABORT);
- mBytes = NULL;
- }
- mEnv->DeleteGlobalRef(mByteArray);
- mByteArray = NULL;
- } else {
- mBytes = NULL;
- }
- mByteArrayLen = 0;
- mEnv = NULL;
- }
-}
-
-int32_t StreamWrapper::getBufferSize() {
- return mByteArrayLen;
-}
-
-jbyte* StreamWrapper::getBufferPtr() {
- return mBytes;
-}