Exemplo n.º 1
0
        /// <summary>
        /// Update the current APDU with selected parameters
        /// </summary>
        /// <param name="apduParam">APDU parameters</param>
        public void    Update(APDUParam apduParam)
        {
            if (apduParam.UseData)
            {
                m_baData = apduParam.Data;
            }

            if (apduParam.UseLe)
            {
                m_bLe = apduParam.Le;
            }

            if (apduParam.UseP1)
            {
                m_bP1 = apduParam.P1;
            }

            if (apduParam.UseP2)
            {
                m_bP2 = apduParam.P2;
            }

            if (apduParam.UseChannel)
            {
                m_bCla += apduParam.Channel;
            }
        }
Exemplo n.º 2
0
        /// <summary>
        /// Copy constructor (used for cloning)
        /// </summary>
        /// <param name="param"></param>
        public APDUParam(APDUParam param)
        {
            // Copy field
            if (param.m_baData != null)
            {
                param.m_baData.CopyTo(m_baData, 0);
            }
            m_bClass   = param.m_bClass;
            m_bChannel = param.m_bChannel;
            m_bP1      = param.m_bP1;
            m_bP2      = param.m_bP2;
            m_nLe      = param.m_nLe;

            // Copy flags field
            m_fChannel = param.m_fChannel;
            m_fClass   = param.m_fClass;
            m_fData    = param.m_fData;
            m_fLe      = param.m_fLe;
            m_fUseP1   = param.m_fUseP1;
            m_fUseP2   = param.m_fUseP2;
        }