internal static extern error_t RG_GetStatus(
     [In] ref RG_ENDPOINT pEndpoint,
     byte deviceAddress,
     [In, Out, MarshalAs(UnmanagedType.U1)] ref RG_DEVICE_STATUS_TYPE pStatusType,
     [In, Out] ref RG_PIN_SATETS_16 pinStates,
     [In, Out] ref RG_CARD_INFO pCardInfo,
     [In, Out] ref RG_CARD_MEMORY pCardMemory);
 internal static extern error_t RG_ReadBlockDirect(
     [In] ref RG_ENDPOINT pEndpoint,
     byte deviceAddress,
     byte blockNum,
     [In] ref RG_PROFILE_DATA profileData,
     [In, Out] byte[] blockData,
     [In, Out] ref UInt32 blockDataSize,
     [In, Out] ref RG_PIN_SATETS_16 pinStates);
 /**
  * @brief Запрашивает текущий статус устройства
  * @param pEndpoint указатель на параметры подключения
  * @param deviceAddress адрес сутройства
  * @param pStatusType не null указатель на тип статуса устройства
  * @param pCardInfo не null указатель на структуру данных о карте
  * @param pMemBlock указатель на структуру данных о памяти блока
  * @return Код ошибки
  */
 public error_t RG_GetStatus(
     ref RG_ENDPOINT pEndPoint,
     byte deviceAddress,
     ref RG_DEVICE_STATUS_TYPE pStatusType,
     ref RG_PIN_SATETS_16 pinStates,
     ref RG_CARD_INFO cardInfo,
     ref RG_CARD_MEMORY cardMemory)
 {
     if (_disposed)
     {
         throw new ObjectDisposedException(GetType().FullName);
     }
     return(_delegates.RG_GetStatus(ref pEndPoint, deviceAddress, ref pStatusType, ref pinStates, ref cardInfo, ref cardMemory));
 }
 public error_t RG_ReadBlockDirect(
     ref RG_ENDPOINT pEndpoint,
     byte deviceAddress,
     byte blockNum,
     ref RG_PROFILE_DATA profileData,
     byte[] blockData,
     ref UInt32 blockDataSize,
     ref RG_PIN_SATETS_16 pinStates)
 {
     if (_disposed)
     {
         throw new ObjectDisposedException(GetType().FullName);
     }
     return(_delegates.RG_ReadBlockDirect(ref pEndpoint, deviceAddress, blockNum, ref profileData, blockData, ref blockDataSize, ref pinStates));
 }