OSDN Git Service

(none)
[hos/hos-v4a.git] / aplfw / driver / misc / memdrv / memdrv_close.c
1 /** 
2  *  Hyper Operating System  Application Framework
3  *
4  * @file  memdrv.h
5  * @brief %jp{メモリマップドファイル用デバイスドライバ}
6  *
7  * Copyright (C) 2006-2007 by Project HOS
8  * http://sourceforge.jp/projects/hos/
9  */
10
11
12 #include "memdrv_local.h"
13 #include "system/sysapi/sysapi.h"
14
15
16 /** クローズ */
17 void MemDrv_Close(C_DRVOBJ *pDrvObj, C_FILEOBJ *pFileObj)
18 {
19         C_MEMDRV                *self;
20         C_MEMDRVFILE    *pFile;
21         
22         /* upper cast */
23         self  = (C_MEMDRV *)pDrvObj;
24         pFile = (C_MEMDRVFILE *)pFileObj;
25         
26         /* クローズ処理 */
27         SysMtx_Lock(self->hMtx);
28         --self->iOpenCount;
29         SysMtx_Unlock(self->hMtx);
30         
31         /* ディスクリプタ削除 */
32         FileObj_Delete((C_FILEOBJ *)pFile);     
33         SysMem_Free(pFile);
34 }
35
36
37 /* end of file */