package org.ifsoft.rtp;
import org.ifsoft.*;
import java.util.ArrayList;
public class FBGenericNACK
{
private Boolean _lostPacketIdPlus1;
private Boolean _lostPacketIdPlus10;
private Boolean _lostPacketIdPlus11;
private Boolean _lostPacketIdPlus12;
private Boolean _lostPacketIdPlus13;
private Boolean _lostPacketIdPlus14;
private Boolean _lostPacketIdPlus15;
private Boolean _lostPacketIdPlus16;
private Boolean _lostPacketIdPlus2;
private Boolean _lostPacketIdPlus3;
private Boolean _lostPacketIdPlus4;
private Boolean _lostPacketIdPlus5;
private Boolean _lostPacketIdPlus6;
private Boolean _lostPacketIdPlus7;
private Boolean _lostPacketIdPlus8;
private Boolean _lostPacketIdPlus9;
private Integer _packetId;
public FBGenericNACK()
{
_lostPacketIdPlus1 = Boolean.valueOf(false);
_lostPacketIdPlus10 = Boolean.valueOf(false);
_lostPacketIdPlus11 = Boolean.valueOf(false);
_lostPacketIdPlus12 = Boolean.valueOf(false);
_lostPacketIdPlus13 = Boolean.valueOf(false);
_lostPacketIdPlus14 = Boolean.valueOf(false);
_lostPacketIdPlus15 = Boolean.valueOf(false);
_lostPacketIdPlus16 = Boolean.valueOf(false);
_lostPacketIdPlus2 = Boolean.valueOf(false);
_lostPacketIdPlus3 = Boolean.valueOf(false);
_lostPacketIdPlus4 = Boolean.valueOf(false);
_lostPacketIdPlus5 = Boolean.valueOf(false);
_lostPacketIdPlus6 = Boolean.valueOf(false);
_lostPacketIdPlus7 = Boolean.valueOf(false);
_lostPacketIdPlus8 = Boolean.valueOf(false);
_lostPacketIdPlus9 = Boolean.valueOf(false);
_packetId = Integer.valueOf(0);
}
public Byte[] getBytes()
{
ArrayList list = new ArrayList();
ArrayListExtensions.addRange(list, BitAssistant.getShortBytesFromIntegerNetwork(getPacketId()));
Byte item = new Byte((new Integer((getLostPacketIdPlus16().booleanValue() ? 0x80 : 0) | (getLostPacketIdPlus15().booleanValue() ? 0x40 : 0) | (getLostPacketIdPlus14().booleanValue() ? 0x20 : 0) | (getLostPacketIdPlus13().booleanValue() ? 0x10 : 0) | (getLostPacketIdPlus12().booleanValue() ? 8 : 0) | (getLostPacketIdPlus11().booleanValue() ? 4 : 0) | (getLostPacketIdPlus10().booleanValue() ? 2 : 0) | (getLostPacketIdPlus9().booleanValue() ? 1 : 0))).byteValue());
Byte num2 = new Byte((new Integer((getLostPacketIdPlus8().booleanValue() ? 0x80 : 0) | (getLostPacketIdPlus7().booleanValue() ? 0x40 : 0) | (getLostPacketIdPlus6().booleanValue() ? 0x20 : 0) | (getLostPacketIdPlus5().booleanValue() ? 0x10 : 0) | (getLostPacketIdPlus4().booleanValue() ? 8 : 0) | (getLostPacketIdPlus3().booleanValue() ? 4 : 0) | (getLostPacketIdPlus2().booleanValue() ? 2 : 0) | (getLostPacketIdPlus1().booleanValue() ? 1 : 0))).byteValue());
list.add(new Byte(item.byteValue()));
list.add(new Byte(num2.byteValue()));
return (Byte[])list.toArray(new Byte[0]);
}
public Boolean getLostPacketIdPlus1()
{
return _lostPacketIdPlus1;
}
public Boolean getLostPacketIdPlus10()
{
return _lostPacketIdPlus10;
}
public Boolean getLostPacketIdPlus11()
{
return _lostPacketIdPlus11;
}
public Boolean getLostPacketIdPlus12()
{
return _lostPacketIdPlus12;
}
public Boolean getLostPacketIdPlus13()
{
return _lostPacketIdPlus13;
}
public Boolean getLostPacketIdPlus14()
{
return _lostPacketIdPlus14;
}
public Boolean getLostPacketIdPlus15()
{
return _lostPacketIdPlus15;
}
public Boolean getLostPacketIdPlus16()
{
return _lostPacketIdPlus16;
}
public Boolean getLostPacketIdPlus2()
{
return _lostPacketIdPlus2;
}
public Boolean getLostPacketIdPlus3()
{
return _lostPacketIdPlus3;
}
public Boolean getLostPacketIdPlus4()
{
return _lostPacketIdPlus4;
}
public Boolean getLostPacketIdPlus5()
{
return _lostPacketIdPlus5;
}
public Boolean getLostPacketIdPlus6()
{
return _lostPacketIdPlus6;
}
public Boolean getLostPacketIdPlus7()
{
return _lostPacketIdPlus7;
}
public Boolean getLostPacketIdPlus8()
{
return _lostPacketIdPlus8;
}
public Boolean getLostPacketIdPlus9()
{
return _lostPacketIdPlus9;
}
public Integer getPacketId()
{
return _packetId;
}
public static FBGenericNACK parseBytes(Byte genericNACKBytes[])
{
FBGenericNACK cnack = new FBGenericNACK();
cnack.setPacketId(BitAssistant.toIntegerFromShortNetwork(genericNACKBytes, Integer.valueOf(0)));
Byte num = genericNACKBytes[2];
Byte num2 = genericNACKBytes[3];
cnack.setLostPacketIdPlus16(Boolean.valueOf((num.byteValue() & 0x80) == 128));
cnack.setLostPacketIdPlus15(Boolean.valueOf((num.byteValue() & 0x40) == 64));
cnack.setLostPacketIdPlus14(Boolean.valueOf((num.byteValue() & 0x20) == 32));
cnack.setLostPacketIdPlus13(Boolean.valueOf((num.byteValue() & 0x10) == 16));
cnack.setLostPacketIdPlus12(Boolean.valueOf((num.byteValue() & 8) == 8));
cnack.setLostPacketIdPlus11(Boolean.valueOf((num.byteValue() & 4) == 4));
cnack.setLostPacketIdPlus10(Boolean.valueOf((num.byteValue() & 2) == 2));
cnack.setLostPacketIdPlus9(Boolean.valueOf((num.byteValue() & 1) == 1));
cnack.setLostPacketIdPlus8(Boolean.valueOf((num2.byteValue() & 0x80) == 128));
cnack.setLostPacketIdPlus7(Boolean.valueOf((num2.byteValue() & 0x40) == 64));
cnack.setLostPacketIdPlus6(Boolean.valueOf((num2.byteValue() & 0x20) == 32));
cnack.setLostPacketIdPlus5(Boolean.valueOf((num2.byteValue() & 0x10) == 16));
cnack.setLostPacketIdPlus4(Boolean.valueOf((num2.byteValue() & 8) == 8));
cnack.setLostPacketIdPlus3(Boolean.valueOf((num2.byteValue() & 4) == 4));
cnack.setLostPacketIdPlus2(Boolean.valueOf((num2.byteValue() & 2) == 2));
cnack.setLostPacketIdPlus1(Boolean.valueOf((num2.byteValue() & 1) == 1));
return cnack;
}
public void setLostPacketIdPlus1(Boolean value)
{
_lostPacketIdPlus1 = value;
}
public void setLostPacketIdPlus10(Boolean value)
{
_lostPacketIdPlus10 = value;
}
public void setLostPacketIdPlus11(Boolean value)
{
_lostPacketIdPlus11 = value;
}
public void setLostPacketIdPlus12(Boolean value)
{
_lostPacketIdPlus12 = value;
}
public void setLostPacketIdPlus13(Boolean value)
{
_lostPacketIdPlus13 = value;
}
public void setLostPacketIdPlus14(Boolean value)
{
_lostPacketIdPlus14 = value;
}
public void setLostPacketIdPlus15(Boolean value)
{
_lostPacketIdPlus15 = value;
}
public void setLostPacketIdPlus16(Boolean value)
{
_lostPacketIdPlus16 = value;
}
public void setLostPacketIdPlus2(Boolean value)
{
_lostPacketIdPlus2 = value;
}
public void setLostPacketIdPlus3(Boolean value)
{
_lostPacketIdPlus3 = value;
}
public void setLostPacketIdPlus4(Boolean value)
{
_lostPacketIdPlus4 = value;
}
public void setLostPacketIdPlus5(Boolean value)
{
_lostPacketIdPlus5 = value;
}
public void setLostPacketIdPlus6(Boolean value)
{
_lostPacketIdPlus6 = value;
}
public void setLostPacketIdPlus7(Boolean value)
{
_lostPacketIdPlus7 = value;
}
public void setLostPacketIdPlus8(Boolean value)
{
_lostPacketIdPlus8 = value;
}
public void setLostPacketIdPlus9(Boolean value)
{
_lostPacketIdPlus9 = value;
}
public void setPacketId(Integer value)
{
_packetId = value;
}
}