alsa-lib-1.0.27.2/snd_open_device()
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
*参照元 [#g67a5ffd]
#backlinks
*説明 [#o994ffc7]
-パス: [[alsa-lib-1.0.27.2/include/local.h]]
-close-on-exec フラグを立てて open する。
--resmgr が有効の場合、resmgr を経由してファイルを開こう...
--アクセス権がないエラーを回避するため?resmgr ってなんだ...
**引数 [#z4d8d2bc]
-const char *filename
--open するファイル名
-int fmode
--アクセスモード、フラグ。open の第二引数と同じ。
**返り値 [#s1d43a57]
-int
--ファイルディスクリプタを返す。エラーの場合は -1 を返す。
**参考 [#w953eb42]
*実装 [#g0a79e9a]
static inline int snd_open_device(const char *filename, ...
{
int fd;
#ifdef O_CLOEXEC
fmode |= O_CLOEXEC;
#endif
fd = open(filename, fmode);
/* open with resmgr */
#ifdef SUPPORT_RESMGR
if (fd < 0) {
if (errno == EAGAIN || errno == EBUSY)
return fd;
if (! access(filename, F_OK))
fd = rsm_open_device(filename, fmode);
}
#endif
if (fd >= 0)
fcntl(fd, F_SETFD, FD_CLOEXEC);
return fd;
}
*コメント [#oc17e056]
終了行:
*参照元 [#g67a5ffd]
#backlinks
*説明 [#o994ffc7]
-パス: [[alsa-lib-1.0.27.2/include/local.h]]
-close-on-exec フラグを立てて open する。
--resmgr が有効の場合、resmgr を経由してファイルを開こう...
--アクセス権がないエラーを回避するため?resmgr ってなんだ...
**引数 [#z4d8d2bc]
-const char *filename
--open するファイル名
-int fmode
--アクセスモード、フラグ。open の第二引数と同じ。
**返り値 [#s1d43a57]
-int
--ファイルディスクリプタを返す。エラーの場合は -1 を返す。
**参考 [#w953eb42]
*実装 [#g0a79e9a]
static inline int snd_open_device(const char *filename, ...
{
int fd;
#ifdef O_CLOEXEC
fmode |= O_CLOEXEC;
#endif
fd = open(filename, fmode);
/* open with resmgr */
#ifdef SUPPORT_RESMGR
if (fd < 0) {
if (errno == EAGAIN || errno == EBUSY)
return fd;
if (! access(filename, F_OK))
fd = rsm_open_device(filename, fmode);
}
#endif
if (fd >= 0)
fcntl(fd, F_SETFD, FD_CLOEXEC);
return fd;
}
*コメント [#oc17e056]
ページ名: