internal static IntPtr SCardTransmit(
     [In] IntPtr hCard,
     [In] IntPtr pioSendPci,
     [In] byte[] pbSendBuffer,
     [In] IntPtr cbSendLength,
     [In, Out] IntPtr pioRecvPci,
     [Out] byte[] pbRecvBuffer,
     [In, Out] ref IntPtr pcbRecvLength)
 {
     if (_osUnixPlatform == OSUnixPlatform.Linux)
     {
         return(LinuxNativeMethods.SCardTransmit(hCard, pioSendPci, pbSendBuffer, cbSendLength, pioRecvPci, pbRecvBuffer, ref pcbRecvLength));
     }
     else if (_osUnixPlatform == OSUnixPlatform.OSX)
     {
         return(OSXNativeMethods.SCardTransmit(hCard, pioSendPci, pbSendBuffer, cbSendLength, pioRecvPci, pbRecvBuffer, ref pcbRecvLength));;
     }
     else
     {
         throw new NotImplementedException();
     }
 }