package com.dev.dummyload;
|
|
import java.nio.ByteBuffer;
|
import java.nio.ByteOrder;
|
|
import com.ComBase;
|
|
public class DummyLoad_Data {
|
public static final int BYTE_LEN = 7;
|
|
public int CMD;
|
public int LoaderState;
|
public int AlarmState;
|
public float SetCurrent; //ÉèÖÃÄ¿±êµçÁ÷ *10±ÈÈç100Ϊ10A
|
public float Current; //µ±Ç°µçÁ÷
|
|
/**
|
* ½«bytebufferÖеÄÊý¾ÝÈ¡³ö·ÅÈë¸Ã¶ÔÏóµÄÊôÐÔÖУ¬²¢·µ»ØÊÇ·ñÈ¡³ö³É¹¦
|
* @param bf
|
* @return
|
*/
|
public boolean putByteBuffer(final ByteBuffer bf)
|
{
|
if(bf.limit() < BYTE_LEN) {
|
return false;
|
}
|
ByteBuffer tmpbuf = bf;
|
|
tmpbuf.position(0);
|
|
this.CMD = ComBase.changeByteToInt(tmpbuf.get());
|
this.LoaderState = ComBase.changeByteToInt(tmpbuf.get());
|
this.AlarmState = ComBase.changeByteToInt(tmpbuf.get());
|
|
this.SetCurrent = ComBase.changeShortToFloat(tmpbuf.getShort())/10;
|
this.Current = ComBase.changeShortToFloat(tmpbuf.getShort())/10;
|
|
tmpbuf.compact();
|
tmpbuf.flip();
|
|
return true;
|
}
|
|
public ByteBuffer getByteBuffer() {
|
|
ByteBuffer tmpbuf = ByteBuffer.allocate(BYTE_LEN);
|
tmpbuf.order(ByteOrder.BIG_ENDIAN);
|
tmpbuf.position(0);
|
|
tmpbuf.put(ComBase.changeIntToByte(CMD));
|
tmpbuf.put(ComBase.changeIntToByte(LoaderState));
|
tmpbuf.put(ComBase.changeIntToByte(AlarmState));
|
|
tmpbuf.putShort(ComBase.changeFloatToShort(SetCurrent*10));
|
tmpbuf.putShort(ComBase.changeFloatToShort(Current*10));
|
|
tmpbuf.flip();
|
return tmpbuf;
|
}
|
|
|
/**
|
* »ñÈ¡µ±Ç°¹¤×÷״̬×Ö·û´®
|
* @return
|
*/
|
public String getDevWorkStateStr() {
|
String workstatestr = "";
|
switch (LoaderState) {
|
case 0: workstatestr = "Í£Ö¹"; break;
|
case 1: workstatestr = "·Åµç"; break;
|
case 2: workstatestr = "³äµç"; break;
|
default:workstatestr = "δ֪";break;
|
}
|
workstatestr += "-" + LoaderState;
|
return workstatestr;
|
}
|
}
|