aboutsummaryrefslogtreecommitdiff
path: root/eclipse/plugins/com.android.ide.eclipse.gldebugger/src/com/android/ide/eclipse/gltrace/state/transforms/BufferSubDataTransform.java
diff options
context:
space:
mode:
Diffstat (limited to 'eclipse/plugins/com.android.ide.eclipse.gldebugger/src/com/android/ide/eclipse/gltrace/state/transforms/BufferSubDataTransform.java')
-rw-r--r--eclipse/plugins/com.android.ide.eclipse.gldebugger/src/com/android/ide/eclipse/gltrace/state/transforms/BufferSubDataTransform.java76
1 files changed, 0 insertions, 76 deletions
diff --git a/eclipse/plugins/com.android.ide.eclipse.gldebugger/src/com/android/ide/eclipse/gltrace/state/transforms/BufferSubDataTransform.java b/eclipse/plugins/com.android.ide.eclipse.gldebugger/src/com/android/ide/eclipse/gltrace/state/transforms/BufferSubDataTransform.java
deleted file mode 100644
index 393f1b9b7..000000000
--- a/eclipse/plugins/com.android.ide.eclipse.gldebugger/src/com/android/ide/eclipse/gltrace/state/transforms/BufferSubDataTransform.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * Copyright (C) 2012 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.
- */
-
-package com.android.ide.eclipse.gltrace.state.transforms;
-
-import com.android.ide.eclipse.gltrace.GLProtoBuf.GLMessage.Function;
-import com.android.ide.eclipse.gltrace.state.IGLProperty;
-
-import java.nio.ByteBuffer;
-
-/**
- * A {@link BufferSubDataTransform} updates a portion of the buffer data as specified by
- * the {@link Function#glBufferSubData} function.
- */
-public class BufferSubDataTransform implements IStateTransform {
- private final IGLPropertyAccessor mAccessor;
- private final int mOffset;
-
- private final byte[] mSubData;
- private byte[] mOldData;
- private byte[] mNewData;
-
- public BufferSubDataTransform(IGLPropertyAccessor accessor, int offset, byte[] data) {
- mAccessor = accessor;
- mOffset = offset;
- mSubData = data;
- }
-
- @Override
- public void apply(IGLProperty state) {
- IGLProperty property = mAccessor.getProperty(state);
- mOldData = (byte[]) property.getValue();
-
- if (mOldData != null) {
- mNewData = new byte[mOldData.length];
- ByteBuffer bb = ByteBuffer.wrap(mNewData);
-
- // copy all of the old buffer
- bb.put(mOldData);
- bb.rewind();
-
- // update with the sub buffer data at specified offset
- bb.position(mOffset);
- bb.put(mSubData);
- }
-
- property.setValue(mNewData);
- }
-
- @Override
- public void revert(IGLProperty state) {
- if (mOldData != null) {
- IGLProperty property = mAccessor.getProperty(state);
- property.setValue(mOldData);
- mOldData = null;
- }
- }
-
- @Override
- public IGLProperty getChangedProperty(IGLProperty state) {
- return mAccessor.getProperty(state);
- }
-}