public override void GetTargetData(IFreeformEntity_MsgTgt tgt, ref List <byte> buffer)
        {
            FFTgt_H2G_EFT_WithdrawalAuthorization2 tgt2 = tgt as FFTgt_H2G_EFT_WithdrawalAuthorization2;

            buffer.Add(tgt2.AccountType.GetGmuIdInt8());
            buffer.SetBCDValue(tgt2.NonCashableAmount, 4);
            buffer.SetBCDValue(tgt2.CashableAmount, 4);
            buffer.SetBCDValue(tgt2.NonCashableBalanceAmount, 4);
            buffer.SetBCDValue(tgt2.CashableBalanceAmount, 4);
            buffer.Add(tgt2.ErrorCode);
            buffer.SetBCDValue(tgt2.PlayerCardNumber, 5);
            buffer.AddRange(tgt2.PlayerFlags.BytesValue);
            buffer.Add((byte)tgt2.DisplayMessageLength);
            buffer.AddRange(tgt2.DisplayMessage.GetASCIIBytesValue(tgt2.DisplayMessageLength));
        }
        internal override IFreeformEntity ParseBufferInternal(ref IFreeformEntity entity, IFreeformEntity rootEntity, int id, byte[] buffer)
        {
            FFTgt_H2G_EFT_WithdrawalAuthorization2 tgt = new FFTgt_H2G_EFT_WithdrawalAuthorization2();

            tgt.AccountType              = (FF_AppId_EFT_AccountTypes)buffer[0];
            tgt.NonCashableAmount        = FreeformHelper.GetBytesToBCDDouble(buffer, 1, 4);
            tgt.CashableAmount           = FreeformHelper.GetBytesToBCDDouble(buffer, 5, 4);
            tgt.NonCashableBalanceAmount = FreeformHelper.GetBytesToBCDDouble(buffer, 9, 4);
            tgt.CashableBalanceAmount    = FreeformHelper.GetBytesToBCDDouble(buffer, 13, 4);
            tgt.ErrorCode              = buffer[17];
            tgt.PlayerCardNumber       = FreeformHelper.GetBCDValueString(buffer, 0, 18, 5);
            tgt.PlayerFlags.BytesValue = FreeformHelper.GetRange(buffer, 23, 3);
            tgt.DisplayMessageLength   = FreeformHelper.GetBytesToBCDUInt8(buffer, 26, 1);
            tgt.DisplayMessage         = FreeformHelper.GetBCDValueString(buffer, 0, 27, 128);
            return(tgt);
        }
 internal override IFreeformEntity ParseBufferInternal(ref IFreeformEntity entity, IFreeformEntity rootEntity, int id, byte[] buffer)
 {
     FFTgt_H2G_EFT_WithdrawalAuthorization2 tgt = new FFTgt_H2G_EFT_WithdrawalAuthorization2();
     tgt.AccountType = (FF_AppId_EFT_AccountTypes)buffer[0];
     tgt.NonCashableAmount = FreeformHelper.GetBytesToBCDDouble(buffer, 1, 4);
     tgt.CashableAmount = FreeformHelper.GetBytesToBCDDouble(buffer, 5, 4);
     tgt.NonCashableBalanceAmount = FreeformHelper.GetBytesToBCDDouble(buffer, 9, 4);
     tgt.CashableBalanceAmount = FreeformHelper.GetBytesToBCDDouble(buffer, 13, 4);
     tgt.ErrorCode = buffer[17];
     tgt.PlayerCardNumber = FreeformHelper.GetBCDValueString(buffer, 0, 18, 5);
     tgt.PlayerFlags.BytesValue = FreeformHelper.GetRange(buffer, 23, 3);
     tgt.DisplayMessageLength = FreeformHelper.GetBytesToBCDUInt8(buffer, 26, 1);
     tgt.DisplayMessage = FreeformHelper.GetBCDValueString(buffer, 0, 27, 128);
     return tgt;
 }