package com.njcn.csharmonic.offline.mincfg.vo;

public class DATA_FLICK //波动闪变
{
	private RTC_Timer time; //数据时标
	private Float[] FLUCT; //波动
	private Float[] FLICT;  //短闪
	private Float[] LFLICT; //长闪
	public DATA_FLICK()
	{
		time = new RTC_Timer();
		FLUCT = new Float[3];
		FLICT = new Float[3];
		LFLICT = new Float[3];
	}
	public static int GetSize()
	{
//C# TO JAVA CONVERTER TODO TASK: There is no Java equivalent to 'sizeof':
		return 6 * Short.SIZE / Byte.SIZE + 9 *  Float.SIZE / Byte.SIZE;
	}
	public final boolean SetStructBuf(byte[] bArray, int nHaveRead)
	{
		int nByteSize = bArray.length;
		if (nByteSize < GetSize())
		{
			return false;
		}

		int iStep = nHaveRead;
		time.SetStructBuf(bArray, iStep);
		iStep = iStep + RTC_Timer.GetSize();
		RefObject<Float[]> tempRef_FLUCT = new RefObject<Float[]>(FLUCT);
		iStep += Service.convertFloatArraySingle(bArray, iStep, tempRef_FLUCT);
		FLUCT = tempRef_FLUCT.argvalue;
		RefObject<Float[]> tempRef_FLICT = new RefObject<Float[]>(FLICT);
		iStep += Service.convertFloatArraySingle(bArray, iStep, tempRef_FLICT);
		FLICT = tempRef_FLICT.argvalue;
		RefObject<Float[]> tempRef_LFLICT = new RefObject<Float[]>(LFLICT);
		iStep += Service.convertFloatArraySingle(bArray, iStep, tempRef_LFLICT);
		LFLICT = tempRef_LFLICT.argvalue;
		return true;
	}
}