AioGetAoTransferCount


Function

Retrieves the number of data that are transferred from the user memory.
This function can only be used when the transfer mode of the conversion data that is set by AioSetAoTransferMode is User buffer mode.
It cannot be used when the transfer mode of the conversion data is Device buffer mode.

Format

Ret = AioGetAoTransferCount ( Id , AoTransferCount )

Parameters

Id [ C, C++ : short ] [ Python : ctypes.c_short ]
Specifies the Device ID retrieved from AioInit function.

AoTransferCount [ C, C++ : long * ] [ Python : ctypes.POINTER(ctypes.c_long) ]
Specifies the address of the variable that stores the transfer count.

Return value

Ret [ C, C++ : long ] [ Python : ctypes.c_long ]

Return values

Content

0

Normality completion

7

Execute AioResetDevice function because the device has recovered from standby mode

10001

Invalid Id was specified
Use the Id retrieved from AioInit to specify the Id in this function.

10002

AIO driver can't be called
At first, perform AioInit function.

13680

Pointer to AoTransferCount is NULL
Specify the address of variable to parameter.

20001

This function can't be used by this device

20003

Can not use because another process is using the device
When another process is using the device, all functions except for those that support multi-process can not be performed.

Initial value

In all devices, AoTransferCount = 0

Remarks

Resets this value to 0 by calling AioResetAoMemory function. 

In the Ring memory format, return 0 to the transfer count at the gap of memory.
This function can be executed even if the device is in operation.
This function cannot be used on devices without the analog output function.

Example

Retrieves the number of data that are transferred from the user memory.

C, C++

long Ret;
long AoTransferCount;
Ret = AioGetAoTransferCount ( Id , &AoTransferCount );
 

Python

Ret = ctypes.c_long()
AoTransferCount = ctypes.c_long()
Ret.value = caio.AioGetAoTransferCount ( Id , ctypes.byref(AoTransferCount) )