buffer.java

来自「纯java操作系统jnode,安装简单和操作简单的个人使用的Java操作系统」· Java 代码 · 共 67 行

JAVA
67
字号
/*
 * $Id: Buffer.java,v 1.1 2003/11/25 11:42:31 epr Exp $
 */
package org.jnode.driver.acpi.vm;

import java.util.Hashtable;

/**
 * Buffer.
 * 
 * <p>
 * Title:
 * </p>
 * <p>
 * Description:
 * </p>
 * <p>
 * Copyright: Copyright (c) 2003
 * </p>
 * <p>
 * Company:
 * </p>
 * 
 * @author not attributable
 * @version 1.0
 */

public class Buffer extends AcpiNamedObject {
	byte[] buffer = null;
	Hashtable fields = new Hashtable();

	public Buffer(String name, int size) {
		super(name);
		buffer = new byte[size];
	}

	public Buffer(int size) {
		super("");
		buffer = new byte[size];
	}

	public void createByteField(int byteIndex, String name) {
		ByteField f = new ByteField(name, this, byteIndex);

		fields.put(name, f);
	}
	public static void CreateByteField(Buffer sourceBuffer, int byteIndex, String name) {
		ByteField f = new ByteField(name, sourceBuffer, byteIndex);
		sourceBuffer.fields.put(name, f);
	}

	public static void CreateByteField(String bufferName, int byteIndex, String name) {
		AcpiObject sourceBuffer = NameSpace.rootNameSpace.get(bufferName);
		if (!(sourceBuffer instanceof Buffer))
			return;
		CreateByteField((Buffer) sourceBuffer, byteIndex, name);
	}

	public AcpiObject getValue() {
		return this;
	}

	public AcpiInteger getByte(int index) {
		return new AcpiInteger(buffer[index] & 0xff);
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?