AioSetAoMemoryType


機能

データ格納用メモリ形式の設定を行います。AioSetAoTransferModeで決定される転送方式により設定の意味が異なります。

書式

Ret = AioSetAoMemoryType ( Id , AoMemoryType )

引数

Id [ VB.NET: Short ] [ C, C++: short ] [ C#: short ] [ Python: ctypes.c_short ]
AioInit 関数で取得したデバイスIDを指定します。

AoMemoryType [ VB.NET: Short ] [ C, C++: short ] [ C#: short ] [ Python: ctypes.c_short ]
データ格納用メモリ形式を以下の範囲から指定します。

デバイスバッファ使用時

0

FIFO

1

RING

ユーザーバッファ使用時

0

繰り返し出力なし

1

繰り返し出力あり

戻り値

Ret [ VB.NET: Integer ] [ C, C++: long ] [ C#: int ] [ Python: ctypes.c_long ]

戻り値

内容

0

正常終了

7

スタンバイモードから復帰したため、AioResetDevice関数を実行してください

10001

無効なIDが指定されました
関数に指定するIDは、AioInitで取得したIDを使用してください。

10002

ドライバを呼び出せません
始めにAioInit関数を実行しください。

13140

AoMemoryTypeの値が関数の指定範囲外です
AiMemoryTypeは0(FIFO)か1(RING)を設定してください。

20001

使用しているデバイスではこの関数を使用することができません

20002

デバイスが動作中のため実行できません
この関数を使用するには、アナログ出力動作が停止している必要があります。

20003

他のプロセスがデバイスを使用しているため、実行できません
他のプロセスがデバイスを使用しているときは、マルチプロセス対応関数以外実行できません。

23140

AoMemoryTypeの値が使用しているデバイスの指定範囲外です

初期値

すべてのデバイスで、デバイスバッファ使用時FIFO、ユーザーバッファ使用時繰り返し出力なし

説明

アナログ出力機能を持たないデバイスでは使用できません。
デバイスが動作中の場合、この関数は実行できません。

使用例

データ格納用メモリをFIFOに設定します。

VB.NET

Dim Ret As Integer
Ret = AioSetAoMemoryType ( Id , 0 )
 

C, C++

long Ret;
Ret = AioSetAoMemoryType ( Id , 0 );
 

C#

int Ret;
Ret = aio.SetAoMemoryType ( Id , 0 );
 

Python

Ret = ctypes.c_long()
Ret.value = caio.AioSetAoMemoryType ( Id , 0 )