English
PROGRAMMER'S GUIDEストリームシステムライブラリ
戻る進む
ストリームシステムライブラリ


6.1 基本的なデータ




Title

データ仕様

Data

基本的なデータ

Data Name
 
No

1.0

(1)基本データ型
型名
説明
Uint8
符号なし1バイト整数
Sint8
符号あり1バイト整数
Uint16
符号なし2バイト整数
Sint16
符号あり2バイト整数
Uint32
符号なし4バイト整数
Sint32
符号あり4バイト整数
Bool
論理型4バイト整数(論理定数を値に取る)

(2)論理定数
 論理型(Bool)の値として使用する。
定数名
説明
FALSE
0
論理値の偽を表す
TRUE
1
論理値の真を表す

(3)その他
定数名
説明
NULL
((void *)0)
NULLポインタ


6.2 定数




Title

データ仕様

Data

ループ再生時の再読み込み指定

Data Name

StmLoopRead

No

2.1

(1)ループ再生時の再読み込み指定
定数名
説明
STM_LOOP_READ
ループ再生時、再読み込みをする
STM_LOOP_NOREAD
ループ再生時、再読み込みをしない




Title

データ仕様

Data

ストリームアクセス状態

Data Name

StmAcStat

No

2.2

(1)ストリームアクセス状態
定数名
説明
STM_EXEC_COMPLETED
アクセス終了
STM_EXEC_PAUSE
アクセス一時停止中
STM_EXEC_DOING
アクセス中
STM_EXEC_WAIT
転送待ち
STM_EXEC_TSKEND
即時復帰型関数終了

(2)転送待ちとなる状態
 以下の状況によりストリームをアクセスできない場合、STM_EXEC_WAITとなります。
転送ゲート
状況
開いている
・転送領域がいっぱいになった場合。
・転送開始FADに達する前に、CDバッファの空き領域がなくなった場合。
閉じている/
転送領域未登録
・ストリームの読み込みを終了した場合。
・CDバッファがいっぱいになった場合。




Title

データ仕様

Data

関数ID(1/2)

Data Name

StmFuncId

No

2.3

定数名
対応する関数
STM_INIT
STM_Init
STM_OPENGRP
STM_OpenGrp
STM_CLOSEGRP
STM_CloseGrp
STM_GETSTMNUM
STM_GetStmNum
STM_GETSTMHNDL
STM_GetStmHndl
STM_SETCDBUFFUNC
STM_SetCdbufFunc
STM_OPENFID
STM_OpenFid
STM_OPENFRANGE
STM_OpenFrange
STM_OPENRESI
STM_OpenResi
STM_CLOSE
STM_Close
STM_SETKEY
STM_SetKey
STM_GETINFO
STM_GetInfo
STM_SCTTOWORD
STM_SctToWord
STM_WORDTOSCT
STM_WordToSct
STM_SETALIAS
STM_SetAlias
STM_UNSETALIAS
STM_UnsetAlias
STM_SETTRBUF
STM_SetTrBuf
STM_SETTRFUNC
STM_SetTrFunc
STM_STARTTRANS
STM_StartTrans
STM_SETTRGATE
STM_SetTrGate
STM_SETTRPARA
STM_SetTrPara
STM_SETTRFAD
STM_SetTrFad
STM_SETTRMODE
STM_SetTrMode
STM_RESETTRBUF
STM_ResetTrBuf
STM_GETNUMCDBUF
STM_GetNumCdbuf
STM_GETSCTINFO
STM_GetSctInfo
STM_GETLENTRBUF
STM_GetLenTrBuf
STM_ISTRBUFFULL
STM_IsTrBufFull
STM_ISTRANS
STM_IsTrans
STM_SETEXECGRP
STM_SetExecGrp, STM_NwSetExecGrp
STM_EXECSERVER
STM_ExecServer
STM_MOVEPICKUP
STM_MovePickup
STM_SETLOOP
STM_SetLoop
STM_GETLOOPCNT
STM_GetLoopCnt
STM_GETEXECSTAT
STM_GetExecStat
STM_ISCOMPLETE
STM_IsComplete
STM_EXECTRANS
STM_ExecTrans
STM_CONNECTCDBUF
STM_ConnectCdbuf
STM_MOVECDBUF
STM_MoveCdbuf




Title

データ仕様

Data

エラーコード

Data Name

StmErrCode

No

2.4

STM_ERR_OKの値は0です。その他のエラーコードは、負の値を持ちます。
定数名
説明
STM_ERR_OK
正常終了
STM_ERR_CDRD
CDリードエラー
STM_ERR_CDNODISC
CDがセットされていない
STM_ERR_FID
不正なファイル識別子
STM_ERR_HNDL
ハンドルが不正
STM_ERR_NUM
セクタ数、ワード数が負
STM_ERR_PARA
不正なモード
STM_ERR_NOHNDL
ハンドルに空きがない
STM_ERR_PUINUSE
ピックアップ動作中
STM_ERR_TMOUT
タイムアウト
STM_ERR_CDOPEN
トレイが開いている
STM_ERR_FATAL
CDドライブが<FATAL>状態


6.3 データ型




Title

データ仕様

Data

ライブラリ用ハンドル

Data Name

StmGrpHn,StmHn

No

3.1

ストリームグループ、ストリームの操作に使用します。
型名
説明
StmGrpHn
ストリームグループハンドル
StmHn
ストリームハンドル




Title

データ仕様

Data

ストリームキー

Data Name

StmKey

No

3.2

ストリームキーの指定、取得に使用します。

 (1)ストリームキー
StmKey *stmkey
アクセスマクロ
説明
STM_KEY_FN(stmkey)
Sint16
ファイル番号
STM_KEY_CN(stmkey)
Sint16
チャネル番号
STM_KEY_SMMSK(stmkey)
Sint16
サブモードマスクパターン
STM_KEY_SMVAL(stmkey)
Sint16
サブモード比較値
STM_KEY_CIMSK(stmkey)
Sint16
コーディング情報マスクパターン
STM_KEY_CIVAL(stmkey)
Sint16
コーディング情報比較値

 サブモード、コーディング情報は、それぞれマスクパターンとの論理積を取った後、比較値と等しいか判定されます。

条件式
 →(サブコード & SMMSK) == SMVAL
 →(コーディング情報 & CIMSK) == CIVAL

 (2)ストリームキーの特殊定数
定数名
説明
STM_KEY_NONE
各ストリームキーの選択を無視します。ファイル番号、
チャネル番号、サブモードとコーディング情報のマスク
パターンに指定します。

 (3)サブモード
bit 7   6   5   4   3   2   1   0
   [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] 
    |   |   |   |   |   |   |   |   (CD-ROM XAのサブコードバイトと同じ)
    |   |   |   |   |   |   |   |
    |   |   |   |   |   |   |   +---- STM_SM_EOR       1:レコード最後のセクタ
    |   |   |   |   |   |   +-------- STM_SM_VIDEO     1:ビデオセクタ
    |   |   |   |   |   +------------ STM_SM_AUDIO     1:オーディオセクタ
    |   |   |   |   +---------------- STM_SM_DATA      1:データセクタ
    |   |   |   +-------------------- STM_SM_TRIG      1:トリガオン
    |   |   +------------------------ STM_SM_FORM      1:Form2          0:Form1
    |   +---------------------------- STM_SM_RT        1:リアルタイムセクタ
    +-------------------------------- STM_SM_EOF       1:ファイル最後のセクタ




Title

データ仕様

Data

ストリーム再生範囲

Data Name

StmFrange

No

3.3

ストリームの再生範囲の指定、取得に使用します。

(1)ストリーム再生範囲
StmFrange *frange
アクセスマクロ
説明
STM_FRANGE_SFAD(frange)
Sint32
再生開始FAD
STM_FRANGE_FASNUM(frange)
Sint32
再生セクタ数

 (2)ストリーム再生範囲の定数
定数名
説明
STM_FAD_CDTOP
ディスク先頭を示す(再生開始FADに指定する)
STM_FAD_CDEND
ディスクエンドまでのセクタ数を示す
(再生セクタ数に指定する)




Title

データ仕様

Data

セクタ情報

Data Name

StmSct

No

3.4

セクタ情報の取得に使用します。

 (1)セクタ情報
StmSct *sct
アクセスマクロ
説明
STM_SCT_FAD(sct)
Sint32
フレームアドレス
STM_SCT_FN(sct)
Sint32
ファイル番号
STM_SCT_CN(sct)
Sint32
チャネル番号
STM_SCT_SM(sct)
Uint8
サブモード
STM_SCT_CI(sct)
Uint8
コーディング情報




Title

データ仕様

Data

エラー状態

Data Name

StmErrStat

No

3.5

エラー状態を保持、取得するために使用します。

 (1) エラー状態
StmErrStat *err
アクセスマクロ
説明
STM_ERR_CODE(err)
Sint32
エラーコード
STM_ERR_WHERE(err)
Sint32
エラー発生場所(関数ID)
STM_ERR_FUNC(err)
StmErrFunc
エラー発生時の呼び出し関数
STM_ERR_OBJ(err)
void*
エラー関数の第1引数




Title

データ仕様

Data

バッファサイズ監視関数

Data Name

StmCdbufFunc

No

3.6

 書 式
void (*StmCdbufFunc)(void *obj)
 入 力
obj:登録オブジェクト
 出 力
なし



Title

データ仕様

Data

転送関数

Data Name

StmTrFunc

No

3.7

 書 式
Sint32 (*StmTrFunc)(void *obj, StmHn stm, Sint32 nsct)
 入 力
obj:登録オブジェクト stm:ストリームハンドル nsct:転送セクタ数
 出 力
なし



Title

データ仕様

Data

エラー関数

Data Name

StmErrFunc

No

3.8

 書 式
void (*StmErrFunc)(void *obj, Sint32 ec)
 入 力
obj:登録オブジェクト
ec:エラーコード
 出 力
なし

戻る進む
PROGRAMMER'S GUIDEストリームシステムライブラリ
Copyright SEGA ENTERPRISES, LTD., 1997