#ifndef __CAN_UTIL_H__
#define __CAN_UTIL_H__

//-----------------------------------------------------------------------------
void stop_trans(struct can_t *can, int channel);
/* Остановка выдачи заданного канала заданной платы */

//-----------------------------------------------------------------------------
void start_trans(struct can_t *can, int channel);
/* Запуск выдачи заданного канала заданной платы */

//-----------------------------------------------------------------------------
void transmit_message(struct can_t *can, int channel);
/* Выдача сообщения по шине CAN с проверкой соответствия режима и счетчика повторов */

//-----------------------------------------------------------------------------
void write_replay_status_and_free_mem(struct can_tx_fifo_t *tx_fifo, int status);
/* Разблокирование клиента (и освобождение памяти в случае необходимости) */

//------------------------------------------------------------------------------
void write_replay_error_all(struct can_t *can, int channel, int status);
/* Разблокирование всех клиентов в случаем ошибки (выдача) */

//------------------------------------------------------------------------------
struct can_tx_fifo_t *remove_tx_client_from_list(struct can_t *can, int channel,
		struct can_tx_fifo_t *removed_tx_fifo);
/* Удалить из списка */

#endif /* __CAN_UTIL_H__ */
