RZ/A1H CMSIS-RTOS RTX BSP for GR-PEACH.

Dependents:   GR-PEACH_Azure_Speech ImageZoomInout_Sample ImageRotaion_Sample ImageScroll_Sample ... more

Fork of R_BSP by Daiki Kato

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers aioif.h Source File

aioif.h

00001 /******************************************************************************
00002  *
00003  * $Rev: 891 $
00004  * $Date: 2012-12-14 19:28:37 +0900#$
00005  *
00006  * Description : ITRON support functions for IOIF Asynchronous I/O header file
00007  *
00008  * (C) Copyright RENESAS ELECTRONICS EUROPE Ltd 2012 All Rights Reserved
00009  *****************************************************************************/
00010 
00011 #ifndef AIOIF_H
00012 #define AIOIF_H
00013 
00014 #include <ioif_aio.h>
00015 
00016 #ifdef __cplusplus
00017 extern "C" {
00018 #endif
00019 
00020 typedef struct AHF_S
00021 {
00022     struct aiocb *head;
00023     struct aiocb *tail;
00024     uint32_t flags;
00025     osMutexId semid; /* Source Merge 08-81 */
00026     osMutexDef_t* p_cmtx;
00027     int32_t saved_int_mask;
00028 } AHF_S;
00029 
00030 #define AHF_CREATESEM   0x1 /* create a semaphore for locking */ /* Source Merge 08-82 */
00031 #define AHF_LOCKSEM     0x2 /* use a semaphore for locking */    /* Source Merge 08-82 */
00032 #define AHF_LOCKINT     0x4 /* use interrupts for locking */
00033 
00034 /* AHF (Asynchronous Helper Functions */
00035 int32_t ahf_create (AHF_S * const ahf, const uint32_t f); /* Source Merge 08-83 */
00036 void ahf_destroy (AHF_S const * const ahf);
00037 void ahf_addtail (AHF_S * const ahf, struct aiocb * const aio); /* Source Merge 08-04 */
00038 struct aiocb *ahf_removehead (AHF_S * const ahf);
00039 int32_t ahf_remove (AHF_S *ahf, struct aiocb *aio);
00040 struct aiocb *ahf_peekhead (AHF_S * const ahf);
00041 void ahf_cancelall (AHF_S * const ahf);
00042 void ahf_complete (AHF_S *ahf, struct aiocb * const aio);
00043 int32_t ahf_cancel (AHF_S * const ahf, struct aiocb * const aio);
00044 
00045 #ifdef __cplusplus
00046 }
00047 #endif
00048 
00049 #endif