public bool Decode(PduMarshaler marshaler) { try { byte t = marshaler.ReadByte(); c = (EIGHT_BYTE_C_Values)(t >> 5); val1 = (byte)(t & 0x1F); if (c >= EIGHT_BYTE_C_Values.TWO_BYTE_VAL) { val2 = marshaler.ReadByte(); } if (c >= EIGHT_BYTE_C_Values.THREE_BYTE_VAL) { val3 = marshaler.ReadByte(); } if (c >= EIGHT_BYTE_C_Values.FOUR_BYTE_VAL) { val4 = marshaler.ReadByte(); } if (c >= EIGHT_BYTE_C_Values.FIVE_BYTE_VAL) { val5 = marshaler.ReadByte(); } if (c >= EIGHT_BYTE_C_Values.SIX_BYTE_VAL) { val6 = marshaler.ReadByte(); } if (c >= EIGHT_BYTE_C_Values.SEVEN_BYTE_VAL) { val7 = marshaler.ReadByte(); } if (c == EIGHT_BYTE_C_Values.EIGHT_BYTE_VAL) { val8 = marshaler.ReadByte(); } return true; } catch { return false; } }
public EIGHT_BYTE_UNSIGNED_INTEGER(ulong num) { if (num > 0x1FFFFFFFFFFFFFFF) { throw new ArgumentException("The integer is out of the valid range of EIGHT_BYTE_UNSIGNED_INTEGER.", "num"); } if (num <= 0x1F) { c = EIGHT_BYTE_C_Values.ONE_BYTE_VAL; val1 = (byte)num; } else if (num <= 0x1FFF) { c = EIGHT_BYTE_C_Values.TWO_BYTE_VAL; val1 = (byte)(num >> 8); val2 = (byte)num; } else if (num <= 0x1FFFFF) { c = EIGHT_BYTE_C_Values.THREE_BYTE_VAL; val1 = (byte)(num >> 16); val2 = (byte)(num >> 8); val3 = (byte)num; } else if (num <= 0x1FFFFFFF) { c = EIGHT_BYTE_C_Values.FOUR_BYTE_VAL; val1 = (byte)(num >> 24); val2 = (byte)(num >> 16); val3 = (byte)(num >> 8); val4 = (byte)num; } else if (num <= 0x1FFFFFFFFF) { c = EIGHT_BYTE_C_Values.FIVE_BYTE_VAL; val1 = (byte)(num >> 32); val2 = (byte)(num >> 24); val3 = (byte)(num >> 16); val4 = (byte)(num >> 8); val5 = (byte)num; } else if (num <= 0x1FFFFFFFFFFF) { c = EIGHT_BYTE_C_Values.SIX_BYTE_VAL; val1 = (byte)(num >> 40); val2 = (byte)(num >> 32); val3 = (byte)(num >> 24); val4 = (byte)(num >> 16); val5 = (byte)(num >> 8); val6 = (byte)num; } else if (num <= 0x1FFFFFFFFFFFFF) { c = EIGHT_BYTE_C_Values.SEVEN_BYTE_VAL; val1 = (byte)(num >> 48); val2 = (byte)(num >> 40); val3 = (byte)(num >> 32); val4 = (byte)(num >> 24); val5 = (byte)(num >> 16); val6 = (byte)(num >> 8); val7 = (byte)num; } else { c = EIGHT_BYTE_C_Values.EIGHT_BYTE_VAL; val1 = (byte)(num >> 56); val2 = (byte)(num >> 48); val3 = (byte)(num >> 40); val4 = (byte)(num >> 32); val5 = (byte)(num >> 24); val6 = (byte)(num >> 16); val7 = (byte)(num >> 8); val8 = (byte)num; } }