typedef struct
#endif
{
USART_TypeDef *Instance;
IRDA_InitTypeDef Init;
const uint8_t *pTxBuffPtr;
uint16_t TxXferSize;
__IO uint16_t TxXferCount;
uint8_t *pRxBuffPtr;
uint16_t RxXferSize;
__IO uint16_t RxXferCount;
DMA_HandleTypeDef *hdmatx;
DMA_HandleTypeDef *hdmarx;
HAL_LockTypeDef Lock;
__IO HAL_IRDA_StateTypeDef gState;
__IO HAL_IRDA_StateTypeDef RxState;
__IO uint32_t ErrorCode;
#if (USE_HAL_IRDA_REGISTER_CALLBACKS == 1)
void (* TxHalfCpltCallback)(struct __IRDA_HandleTypeDef *hirda);
void (* TxCpltCallback)(struct __IRDA_HandleTypeDef *hirda);
void (* RxHalfCpltCallback)(struct __IRDA_HandleTypeDef *hirda);
void (* RxCpltCallback)(struct __IRDA_HandleTypeDef *hirda);
void (* ErrorCallback)(struct __IRDA_HandleTypeDef *hirda);
void (* AbortCpltCallback)(struct __IRDA_HandleTypeDef *hirda);
void (* AbortTransmitCpltCallback)(struct __IRDA_HandleTypeDef *hirda);
void (* AbortReceiveCpltCallback)(struct __IRDA_HandleTypeDef *hirda);
void (* MspInitCallback)(struct __IRDA_HandleTypeDef *hirda);
void (* MspDeInitCallback)(struct __IRDA_HandleTypeDef *hirda);
#endif
} IRDA_HandleTypeDef;