Библиотека RshUniDriver  SDK 2.1
Документация по программированию
 Указатель Структуры данных Файлы Функции Переменные Перечисления Элементы перечислений Макросы Страницы
Функции
Файл RshUniDriverFunctions.h

В данном файле описаны прототипы функций экспортируемых из RshUniDriver.dll. Подробнее...

#include "RshUniDriverStructures.h"

См. исходные тексты.

Функции

unsigned __stdcall UniDriverGetRegisteredDeviceName (unsigned int index, URshType *value)
 Получение строки с названием зарегистрированной библиотеки устройства Подробнее...
 
unsigned __stdcall UniDriverGetError (unsigned int error, URshType *value, int language)
 Получение строки с описанием ошибки Подробнее...
 
unsigned __stdcall UniDriverAllocateBuffer (void *uRshBuffer, unsigned int desiredBufferSize)
 Создание буфера для данных Подробнее...
 
unsigned __stdcall UniDriverFreeBuffer (void *uRshBuffer)
 Удаление буфера данных Подробнее...
 
unsigned __stdcall UniDriverGetDeviceHandle (char *deviceName, unsigned int *deviceHandle)
 Получение идентификатора драйвера Подробнее...
 
unsigned __stdcall UniDriverCloseDeviceHandle (unsigned int deviceHandle)
 Освобождение драйвера устройства Подробнее...
 
unsigned __stdcall UniDriverIsCapable (unsigned int deviceHandle, unsigned int capsCode)
 Проверка возможностей устройства и библиотеки Подробнее...
 
unsigned __stdcall UniDriverConnect (unsigned int deviceHandle, unsigned int deviceIndex, unsigned int mode)
 Подключение к устройству Подробнее...
 
unsigned __stdcall UniDriverConnectViaStringKey (unsigned int deviceHandle, char *key, unsigned int mode)
 Подключение к устройству Подробнее...
 
unsigned __stdcall UniDriverInit (unsigned int deviceHandle, unsigned int initializationMode, void *initializationStructure)
 Инициализация параметров устройства Подробнее...
 
unsigned __stdcall UniDriverStart (unsigned int deviceHandle)
 Запуск сбора данных (генерации сигнала) Подробнее...
 
unsigned __stdcall UniDriverStop (unsigned int deviceHandle)
 Остановка сбора данных (генерации сигнала) Подробнее...
 
unsigned __stdcall UniDriverGetData (unsigned int deviceHandle, unsigned int getDataMode, void *uRshBuffer)
 Получение (передача) буфера с данными Подробнее...
 
unsigned __stdcall UniDriverGet (unsigned int deviceHandle, unsigned int mode, void *value)
 Получение информации об устройстве и библиотеке Подробнее...
 
unsigned __stdcall UniDriverLVGetChar (unsigned int deviceHandle, unsigned int mode, char *value)
 Получение информации об устройстве или библиотеке (char). Подробнее...
 
unsigned __stdcall UniDriverLVGetUChar (unsigned int deviceHandle, unsigned int mode, unsigned char *value)
 Получение информации об устройстве или библиотеке (unsigned char). Подробнее...
 
unsigned __stdcall UniDriverLVGetShort (unsigned int deviceHandle, unsigned int mode, short *value)
 Получение информации об устройстве или библиотеке (short). Подробнее...
 
unsigned __stdcall UniDriverLVGetUShort (unsigned int deviceHandle, unsigned int mode, unsigned short *value)
 Получение информации об устройстве или библиотеке (unsigned short). Подробнее...
 
unsigned __stdcall UniDriverLVGetInt (unsigned int deviceHandle, unsigned int mode, int *value)
 Получение информации об устройстве или библиотеке (int). Подробнее...
 
unsigned __stdcall UniDriverLVGetUInt (unsigned int deviceHandle, unsigned int mode, unsigned int *value)
 Получение информации об устройстве или библиотеке (unsigned int). Подробнее...
 
unsigned __stdcall UniDriverLVGetDouble (unsigned int deviceHandle, unsigned int mode, double *value)
 Получение информации об устройстве или библиотеке (double). Подробнее...
 
unsigned __stdcall UniDriverLVGetCstr (unsigned int deviceHandle, unsigned int mode, char *value, unsigned int maxLength)
 Получение информации об устройстве или библиотеке (char* - строка). Подробнее...
 
unsigned __stdcall UniDriverLVGetArrayInt (unsigned int deviceHandle, unsigned int mode, unsigned int size, unsigned int *received, int *data)
 Получение информации об устройстве или библиотеке (int* - массив). Подробнее...
 
unsigned __stdcall UniDriverLVGetArrayUInt (unsigned int deviceHandle, unsigned int mode, unsigned int size, unsigned int *received, unsigned int *data)
 Получение информации об устройстве или библиотеке (unsigned int* - массив). Подробнее...
 
unsigned __stdcall UniDriverLVGetArrayShort (unsigned int deviceHandle, unsigned int mode, unsigned int size, unsigned int *received, short *data)
 Получение информации об устройстве или библиотеке (short* - массив). Подробнее...
 
unsigned __stdcall UniDriverLVGetArrayUShort (unsigned int deviceHandle, unsigned int mode, unsigned int size, unsigned int *received, unsigned short *data)
 Получение информации об устройстве или библиотеке (unsigned short* - массив). Подробнее...
 
unsigned __stdcall UniDriverLVGetArrayChar (unsigned int deviceHandle, unsigned int mode, unsigned int size, unsigned int *received, char *data)
 Получение информации об устройстве или библиотеке (char* - массив). Подробнее...
 
unsigned __stdcall UniDriverLVGetArrayUChar (unsigned int deviceHandle, unsigned int mode, unsigned int size, unsigned int *received, unsigned char *data)
 Получение информации об устройстве или библиотеке (unsigned char* - массив). Подробнее...
 
unsigned __stdcall UniDriverLVGetArrayDouble (unsigned int deviceHandle, unsigned int mode, unsigned int size, unsigned int *received, double *data)
 Получение информации об устройстве или библиотеке (double* - массив). Подробнее...
 
unsigned __stdcall UniDriverLVGetDataChar (unsigned int deviceHandle, unsigned int getDataMode, unsigned int size, unsigned int *received, char *buffer)
 Получение (передача) буфера с данными (массив char*) Подробнее...
 
unsigned __stdcall UniDriverLVGetDataShort (unsigned int deviceHandle, unsigned int getDataMode, unsigned int size, unsigned int *received, short *buffer)
 Получение (передача) буфера с данными (массив short*) Подробнее...
 
unsigned __stdcall UniDriverLVGetDataInt (unsigned int deviceHandle, unsigned int getDataMode, unsigned int size, unsigned int *received, int *buffer)
 Получение (передача) буфера с данными (массив int*) Подробнее...
 
unsigned __stdcall UniDriverLVGetDataDouble (unsigned int deviceHandle, unsigned int getDataMode, unsigned int size, unsigned int *received, double *buffer)
 Получение (передача) буфера с данными (массив double*) Подробнее...
 
unsigned __stdcall UniDriverLVGetError (unsigned int error, char *description, unsigned int maxLength, int language)
 Получение строки с описанием ошибки Подробнее...
 

Подробное описание

В данном файле описаны прототипы функций экспортируемых из RshUniDriver.dll.

Дата
02.07.2014
Версия
1.0 [SDK 2.1]

Функции

unsigned __stdcall UniDriverAllocateBuffer ( void *  uRshBuffer,
unsigned int  desiredBufferSize 
)

Создание буфера для данных

Аргументы
[in,out]uRshBufferУказатель на структуру URshBuffer
[in]desiredBufferSizeЖелаемый размер буфера
Возвращает
RSH_API_SUCCESS или код ошибки.

Данная функция используется для создания буферов данных, которые затем используются в функции UniDriverGetData для передачи данных.
Перед вызовом функции необходимо установить код данных (одна из констант списка URshTypes) в поле type структуры URshBuffer. После успешного вызова функции в переданной структуре будут содержаться данные о размере буфера, а также указатель на данные. Память выделяется внутри RshUniDriver.dll

unsigned __stdcall UniDriverCloseDeviceHandle ( unsigned int  deviceHandle)

Освобождение драйвера устройства

Аргументы
[in,out]deviceHandleИдентификатор драйвера устройства, полученный в результате вызова функции UniDriverGetDeviceHandle()
Возвращает
RSH_API_SUCCESS или код ошибки.

Данная функция используется для освобождения ресурсов, связанных с загруженной библиотекой абстракции устройства. Как правило, данную функцию нужно вызывать при выходе из программы, либо когда загруженный драйвер устройства больше не нужен.
Обратите внимание, что после успешного вызова данной функции значение идентификатора deviceHandle уже не действительно, т.к. объект, на который он ссылается, будет удален.

unsigned __stdcall UniDriverConnect ( unsigned int  deviceHandle,
unsigned int  deviceIndex,
unsigned int  mode 
)

Подключение к устройству

Аргументы
[in]deviceHandleИдентификатор драйвера устройства, полученный в результате вызова функции UniDriverGetDeviceHandle()
[in]deviceIndexИдентификатор устройства (базовый адрес либо заводской номер).
[in]modeРежим подключения
Допустимые варианты: RSH_CONNECT_MODE_BASE или RSH_CONNECT_MODE_SERIAL_NUMBER.
Возвращает
RSH_API_SUCCESS или код ошибки.

С помощью данной функции можно подключиться к выбранному устройству.
В зависимости от параметра mode, идентификатор устройства может быть либо базовым адресом (индексация устройств в системе начинается с 1), либо заводским номером устройства (данный вариант возможен не для всех устройств).
После успешного вызова данной функции будет осуществлено физическое подключение к заданному устройству. По сути, до вызова данной функции все операции выполняются только с программными объектами (библиотекам).

unsigned __stdcall UniDriverConnectViaStringKey ( unsigned int  deviceHandle,
char *  key,
unsigned int  mode 
)

Подключение к устройству

Аргументы
[in]deviceHandleИдентификатор драйвера устройства, полученный в результате вызова функции UniDriverGetDeviceHandle()
[in]keyСтрока-идентификатор устройства.
[in]modeРежим подключения
Допустимые варианты: RSH_CONNECT_MODE_CONNECTION_STRING
Возвращает
RSH_API_SUCCESS или код ошибки.

С помощью данной функции можно подключиться к выбранному устройству.
Данная функция - аналог UniDriverConnect, используется в некоторых случаях - например, для подключения к Ethernet устройствам по ip адресу и т.п.
Для большинства устройств данный режим не реализован

unsigned __stdcall UniDriverFreeBuffer ( void *  uRshBuffer)

Удаление буфера данных

Аргументы
[in,out]uRshBufferУказатель на структуру URshBuffer
Возвращает
RSH_API_SUCCESS или код ошибки.

С помощью данной функции можно освободить память, выделенную при вызове функции UniDriverAllocateBuffer().
При выгрузке библиотеки RshUniDriver.dll вся выделенная память освобождается автоматически.

unsigned __stdcall UniDriverGet ( unsigned int  deviceHandle,
unsigned int  mode,
void *  value 
)

Получение информации об устройстве и библиотеке

Аргументы
[in]deviceHandleИдентификатор драйвера устройства, полученный в результате вызова функции UniDriverGetDeviceHandle()
[in]modeОдна из констант перечисления RSH_GET
[in,out]valueУказатель на структуру с данными. В зависимости от того, какую информацию нужно получить (выбранный Get код), отличается тип данных в структуре.
Возможные варианты структур и их соответcвие с типами RSH API:
Возвращает
RSH_API_SUCCESS или код ошибки.

Данная функция используется для получения различной информации об устройстве. Заданный в качестве параметра getMode код определяет, какие именно данные и в каком виде будут получены.
Например, если нужно получить количество аналоговых каналов устройства, код будет выглядеть примерно так

...
//результат выполнения операции
unsigned res;
//структура для передачи данных (целое 32 бит без знака)
//ставим нужный тип (это приходится делать вручную, т.к. нет конструктора)
str.type = rshU32;
//инициализируем поле данных
str.data = 0;
//Вызов функции UniDriverGet() (предполагается, что получение идентификатора и подключение уже выполнены ранее)
if (res == RSH_API_SUCCESS)
{
//в поле data - количество каналов
printf("Number of channels: %d\n", str.data);
}
else
{
//обработка ошибки
}
Прим.
Иногда данная функция может использоваться не только для получения данных, но и для задания параметров. Подробности - в описании RSH_GET.
unsigned __stdcall UniDriverGetData ( unsigned int  deviceHandle,
unsigned int  getDataMode,
void *  uRshBuffer 
)

Получение (передача) буфера с данными

Аргументы
[in]deviceHandleИдентификатор драйвера устройства, полученный в результате вызова функции UniDriverGetDeviceHandle()
[in]getDataModeДополнительные параметры (одна из констант перечисления RSH_DATA_MODES). Используйте RSH_DATA_MODE_NO_FLAGS если не требуется выполнять каких-либо дополнительных действий с данными в буфере.
[in]uRshBufferУказатель на структуру URshBuffer. Перед получением данных структура должна быть проинициализирована вызовом функции UniDriverAllocateBuffer().
Возвращает
RSH_API_SUCCESS или код ошибки.

Получение буфера данных, либо передача буфера (в случаее генераторов). После успешного вызова данной функции в буфере будут находиться собранные данные.
Если используется буфер чисел с плавающей точкой (double), отсчеты АЦП будут преобразованы в вольты.
Как правило, библиотеки абстракции поддерживают передачу данных в буфере типа double, а также один из вариантов - char, short или int, в зависимости от разрядности АЦП.

Прим.
Существуют аналоги данной функции (UniDriverLVGetDataShort(), UniDriverLVGetDataDouble() и т.д.), в которыx не используется структура URshBuffer - вместо нее передается указатель на обычный массив нужного типа. В отличие от данной функции, память под массив должна быть выделена заранее, в программе пользователя.
unsigned __stdcall UniDriverGetDeviceHandle ( char *  deviceName,
unsigned int *  deviceHandle 
)

Получение идентификатора драйвера

Аргументы
[in]deviceNameСтрока с названием устройства (имя ветки в реестре).
[in,out]deviceHandleУказатель на переменную, в которую будет помещен идентификатор драйвера.
Возвращает
RSH_API_SUCCESS или код ошибки.

Данная фукнция используется для получения идентификатора драйвера, который в дальнейшем используется для управления устройством. Все остальные функции библиотеки RshUniDriver (такие как UniDriverConnect(), UniDriverStart(), UniDriverGetData() и т.д.) требуют идентификатор драйвера в качестве параметра.
При вызове данной функции внутри библиотеки RshUniDriver.dll происходит загрузка объекта с интерфейсом устройства IRshDevice из соответствующей библиотеки абстракции (например, LA20USB.dll). Полученный объект хранится в памяти до выгрузки библиотеки RshUniDriver или до вызова функции UniDriverCloseDeviceHandle(), а его идентификатор возвращается в переменной deviceHandle.

unsigned __stdcall UniDriverGetError ( unsigned int  error,
URshType value,
int  language 
)

Получение строки с описанием ошибки

Аргументы
[in]errorКод ошибки, полученный в результате вызова одной из функций RshUniDriver
[in,out]valueСтруктура, в которую будет помещена строка с описанием ошибки.
[in]languageЯзык описания (одна из констант - RSH_LANGUAGE_ENGLISH или RSH_LANGUAGE_RUSSIAN)
Возвращает
RSH_API_SUCCESS или код ошибки.

Данная функция позволяет получить строку с описанием ошибки по ее коду.
В зависимости от выбранного типа структуры (URshTypeU16PointerStructure или URshTypeS8PointerStructure) можно получить строку в UTF-16 либо в ANSI формате соответственно.

unsigned __stdcall UniDriverGetRegisteredDeviceName ( unsigned int  index,
URshType value 
)

Получение строки с названием зарегистрированной библиотеки устройства

Аргументы
[in]indexИндекс записи в реестре.
[in,out]valueСтруктура, в которую будет помещена строка с описанием ошибки.
Возвращает
RSH_API_SUCCESS или код ошибки.

Данная функция позволяет получить строку с названием зарегистрированной библиотеки устройства.
В зависимости от выбранного типа структуры (URshTypeU16PointerStructure или URshTypeS8PointerStructure) можно получить строку в UTF-16 либо в ANSI формате соответственно.

unsigned __stdcall UniDriverInit ( unsigned int  deviceHandle,
unsigned int  initializationMode,
void *  initializationStructure 
)

Инициализация параметров устройства

Аргументы
[in]deviceHandleИдентификатор драйвера устройства, полученный в результате вызова функции UniDriverGetDeviceHandle()
[in]initializationModeРежим инициализации (варианты: RSH_INIT_MODE_CHECK или RSH_INIT_MODE_INIT)
[in,out]initializationStructureРежим подключения
Указатель на заполненную структуру инициализации. Можно передать следующие структуры:
URshInitDMA, URshInitMemory, URshInitPort, URshInitDAC, URshInitGSPF, URshInitVoltmeter.
Возвращает
RSH_API_SUCCESS или код ошибки.

С помощью данной функции можно задать необходимые параметры сбора данных (или генерации сигнала), а также осуществлять управление цифровым портом или ЦАПом устройства.
После успешного вызова функции параметры в структуре будут отредактированы, если они выходят за допустимые пределы.

unsigned __stdcall UniDriverIsCapable ( unsigned int  deviceHandle,
unsigned int  capsCode 
)

Проверка возможностей устройства и библиотеки

Аргументы
[in]deviceHandleИдентификатор драйвера устройства, полученный в результате вызова функции UniDriverGetDeviceHandle()
[in]capsCodeОдна из констант перечисления RSH_CAPS
Возвращает
RSH_API_SUCCESS или код ошибки.

С помощью данной функции можно проверить поддержку устройством различных аппаратных и программных возможностей, режимов работы и прочего. Подробности - в описании RSH_CAPS.
Если функция возвращает код RSH_API_SUCCESS - значит запрашиваемая возможность поддерживается устройством.

unsigned __stdcall UniDriverLVGetArrayChar ( unsigned int  deviceHandle,
unsigned int  mode,
unsigned int  size,
unsigned int *  received,
char *  data 
)

Получение информации об устройстве или библиотеке (char* - массив).

Аргументы
[in]deviceHandleИдентификатор драйвера устройства, полученный в результате вызова функции UniDriverGetDeviceHandle()
[in]modeОдна из констант перечисления RSH_GET
[in]sizeРазмер массива - максимальное количество элементов, которые можно скопировать в массив, указатель на который передается в параметре data.
[in,out]receivedПосле успешного выполнения функции в даннной переменной будет возвращено количество фактически скопированных элементов.
[in,out]dataУказатель на массив, в который будут скопированы данные
Возвращает
RSH_API_SUCCESS или код ошибки.

Данная функция - аналог функции UniDriverGet(). Отличие в том, что для передачи данных не используется специальная структура данных - можно просто передать указатель на массив нужного типа.
Тип данных, указанный в описании Get-кода, который подходит для данной функции: RSH_BUFFER_S8

Предупреждения
Память под данные должна быть выделена заранее, в программе пользователя. Внутри библиотеки UniDriver происходит только копирование в переданный буфер.
unsigned __stdcall UniDriverLVGetArrayDouble ( unsigned int  deviceHandle,
unsigned int  mode,
unsigned int  size,
unsigned int *  received,
double *  data 
)

Получение информации об устройстве или библиотеке (double* - массив).

Аргументы
[in]deviceHandleИдентификатор драйвера устройства, полученный в результате вызова функции UniDriverGetDeviceHandle()
[in]modeОдна из констант перечисления RSH_GET
[in]sizeРазмер массива - максимальное количество элементов, которые можно скопировать в массив, указатель на который передается в параметре data.
[in,out]receivedПосле успешного выполнения функции в даннной переменной будет возвращено количество фактически скопированных элементов.
[in,out]dataУказатель на массив, в который будут скопированы данные
Возвращает
RSH_API_SUCCESS или код ошибки.

Данная функция - аналог функции UniDriverGet(). Отличие в том, что для передачи данных не используется специальная структура данных - можно просто передать указатель на массив нужного типа.
Тип данных, указанный в описании Get-кода, который подходит для данной функции: RSH_BUFFER_DOUBLE

Предупреждения
Память под данные должна быть выделена заранее, в программе пользователя. Внутри библиотеки UniDriver происходит только копирование в переданный буфер.
unsigned __stdcall UniDriverLVGetArrayInt ( unsigned int  deviceHandle,
unsigned int  mode,
unsigned int  size,
unsigned int *  received,
int *  data 
)

Получение информации об устройстве или библиотеке (int* - массив).

Аргументы
[in]deviceHandleИдентификатор драйвера устройства, полученный в результате вызова функции UniDriverGetDeviceHandle()
[in]modeОдна из констант перечисления RSH_GET
[in]sizeРазмер массива - максимальное количество элементов, которые можно скопировать в массив, указатель на который передается в параметре data.
[in,out]receivedПосле успешного выполнения функции в даннной переменной будет возвращено количество фактически скопированных элементов.
[in,out]dataУказатель на массив, в который будут скопированы данные
Возвращает
RSH_API_SUCCESS или код ошибки.

Данная функция - аналог функции UniDriverGet(). Отличие в том, что для передачи данных не используется специальная структура данных - можно просто передать указатель на массив нужного типа.
Тип данных, указанный в описании Get-кода, который подходит для данной функции: RSH_BUFFER_S32

Предупреждения
Память под данные должна быть выделена заранее, в программе пользователя. Внутри библиотеки UniDriver происходит только копирование в переданный буфер.
unsigned __stdcall UniDriverLVGetArrayShort ( unsigned int  deviceHandle,
unsigned int  mode,
unsigned int  size,
unsigned int *  received,
short *  data 
)

Получение информации об устройстве или библиотеке (short* - массив).

Аргументы
[in]deviceHandleИдентификатор драйвера устройства, полученный в результате вызова функции UniDriverGetDeviceHandle()
[in]modeОдна из констант перечисления RSH_GET
[in]sizeРазмер массива - максимальное количество элементов, которые можно скопировать в массив, указатель на который передается в параметре data.
[in,out]receivedПосле успешного выполнения функции в даннной переменной будет возвращено количество фактически скопированных элементов.
[in,out]dataУказатель на массив, в который будут скопированы данные
Возвращает
RSH_API_SUCCESS или код ошибки.

Данная функция - аналог функции UniDriverGet(). Отличие в том, что для передачи данных не используется специальная структура данных - можно просто передать указатель на массив нужного типа.
Тип данных, указанный в описании Get-кода, который подходит для данной функции: RSH_BUFFER_S16

Предупреждения
Память под данные должна быть выделена заранее, в программе пользователя. Внутри библиотеки UniDriver происходит только копирование в переданный буфер.
unsigned __stdcall UniDriverLVGetArrayUChar ( unsigned int  deviceHandle,
unsigned int  mode,
unsigned int  size,
unsigned int *  received,
unsigned char *  data 
)

Получение информации об устройстве или библиотеке (unsigned char* - массив).

Аргументы
[in]deviceHandleИдентификатор драйвера устройства, полученный в результате вызова функции UniDriverGetDeviceHandle()
[in]modeОдна из констант перечисления RSH_GET
[in]sizeРазмер массива - максимальное количество элементов, которые можно скопировать в массив, указатель на который передается в параметре data.
[in,out]receivedПосле успешного выполнения функции в даннной переменной будет возвращено количество фактически скопированных элементов.
[in,out]dataУказатель на массив, в который будут скопированы данные
Возвращает
RSH_API_SUCCESS или код ошибки.

Данная функция - аналог функции UniDriverGet(). Отличие в том, что для передачи данных не используется специальная структура данных - можно просто передать указатель на массив нужного типа.
Тип данных, указанный в описании Get-кода, который подходит для данной функции: RSH_BUFFER_U8

Предупреждения
Память под данные должна быть выделена заранее, в программе пользователя. Внутри библиотеки UniDriver происходит только копирование в переданный буфер.
unsigned __stdcall UniDriverLVGetArrayUInt ( unsigned int  deviceHandle,
unsigned int  mode,
unsigned int  size,
unsigned int *  received,
unsigned int *  data 
)

Получение информации об устройстве или библиотеке (unsigned int* - массив).

Аргументы
[in]deviceHandleИдентификатор драйвера устройства, полученный в результате вызова функции UniDriverGetDeviceHandle()
[in]modeОдна из констант перечисления RSH_GET
[in]sizeРазмер массива - максимальное количество элементов, которые можно скопировать в массив, указатель на который передается в параметре data.
[in,out]receivedПосле успешного выполнения функции в даннной переменной будет возвращено количество фактически скопированных элементов.
[in,out]dataУказатель на массив, в который будут скопированы данные
Возвращает
RSH_API_SUCCESS или код ошибки.

Данная функция - аналог функции UniDriverGet(). Отличие в том, что для передачи данных не используется специальная структура данных - можно просто передать указатель на массив нужного типа.
Тип данных, указанный в описании Get-кода, который подходит для данной функции: RSH_BUFFER_U32

Предупреждения
Память под данные должна быть выделена заранее, в программе пользователя. Внутри библиотеки UniDriver происходит только копирование в переданный буфер.
unsigned __stdcall UniDriverLVGetArrayUShort ( unsigned int  deviceHandle,
unsigned int  mode,
unsigned int  size,
unsigned int *  received,
unsigned short *  data 
)

Получение информации об устройстве или библиотеке (unsigned short* - массив).

Аргументы
[in]deviceHandleИдентификатор драйвера устройства, полученный в результате вызова функции UniDriverGetDeviceHandle()
[in]modeОдна из констант перечисления RSH_GET
[in]sizeРазмер массива - максимальное количество элементов, которые можно скопировать в массив, указатель на который передается в параметре data.
[in,out]receivedПосле успешного выполнения функции в даннной переменной будет возвращено количество фактически скопированных элементов.
[in,out]dataУказатель на массив, в который будут скопированы данные
Возвращает
RSH_API_SUCCESS или код ошибки.

Данная функция - аналог функции UniDriverGet(). Отличие в том, что для передачи данных не используется специальная структура данных - можно просто передать указатель на массив нужного типа.
Тип данных, указанный в описании Get-кода, который подходит для данной функции: RSH_BUFFER_U16

Предупреждения
Память под данные должна быть выделена заранее, в программе пользователя. Внутри библиотеки UniDriver происходит только копирование в переданный буфер.
unsigned __stdcall UniDriverLVGetChar ( unsigned int  deviceHandle,
unsigned int  mode,
char *  value 
)

Получение информации об устройстве или библиотеке (char).

Аргументы
[in]deviceHandleИдентификатор драйвера устройства, полученный в результате вызова функции UniDriverGetDeviceHandle()
[in]modeОдна из констант перечисления RSH_GET
[in,out]valueУказатель на переменную, в которую будут помещены данные.
Возвращает
RSH_API_SUCCESS или код ошибки.

Данная функция - аналог функции UniDriverGet(). Отличие в том, что для передачи данных не используется специальная структура данных - можно просто передать указатель на переменную нужного типа.
Тип данных, указанный в описании Get-кода, который подходит для данной функции: RSH_S8

Предупреждения
Память под данные должна быть выделена заранее, в программе пользователя.
unsigned __stdcall UniDriverLVGetCstr ( unsigned int  deviceHandle,
unsigned int  mode,
char *  value,
unsigned int  maxLength 
)

Получение информации об устройстве или библиотеке (char* - строка).

Аргументы
[in]deviceHandleИдентификатор драйвера устройства, полученный в результате вызова функции UniDriverGetDeviceHandle()
[in]modeОдна из констант перечисления RSH_GET
[in,out]valueУказатель на массив, в который будут помещены данные.
[in]maxLengthМаксимальный размер строки (должен быть равен размеру выделенной памяти в буфере value).
Возвращает
RSH_API_SUCCESS или код ошибки.

Данная функция - аналог функции UniDriverGet(). Отличие в том, что для передачи данных не используется специальная структура данных - можно просто передать указатель на переменную нужного типа.
Тип данных, указанный в описании Get-кода, который подходит для данной функции: RSH_S8P

Предупреждения
Память под данные должна быть выделена заранее, в программе пользователя. Внутри библиотеки UniDriver происходит только копирование в переданный буфер.
unsigned __stdcall UniDriverLVGetDataChar ( unsigned int  deviceHandle,
unsigned int  getDataMode,
unsigned int  size,
unsigned int *  received,
char *  buffer 
)

Получение (передача) буфера с данными (массив char*)

Аргументы
[in]deviceHandleИдентификатор драйвера устройства, полученный в результате вызова функции UniDriverGetDeviceHandle()
[in]getDataModeДополнительные параметры (одна из констант перечисления RSH_DATA_MODES). Используйте RSH_DATA_MODE_NO_FLAGS если не требуется выполнять каких-либо дополнительных действий с данными в буфере.
[in]sizeРазмер массива - максимальное количество элементов, которые можно скопировать в массив, указатель на который передается в параметре buffer.
[in,out]receivedПосле успешного выполнения функции в даннной переменной будет возвращено количество фактически скопированных элементов.
[in,out]bufferУказатель на массив, в который будут скопированы данные
Возвращает
RSH_API_SUCCESS или код ошибки.

Данная функция - аналог функции UniDriverGetData(). Отличие в том, что для передачи данных не используется специальная структура данных - можно просто передать указатель на массив нужного типа.

Предупреждения
Память под данные должна быть выделена заранее, в программе пользователя. Внутри библиотеки UniDriver происходит только копирование в переданный буфер.
unsigned __stdcall UniDriverLVGetDataDouble ( unsigned int  deviceHandle,
unsigned int  getDataMode,
unsigned int  size,
unsigned int *  received,
double *  buffer 
)

Получение (передача) буфера с данными (массив double*)

Аргументы
[in]deviceHandleИдентификатор драйвера устройства, полученный в результате вызова функции UniDriverGetDeviceHandle()
[in]getDataModeДополнительные параметры (одна из констант перечисления RSH_DATA_MODES). Используйте RSH_DATA_MODE_NO_FLAGS если не требуется выполнять каких-либо дополнительных действий с данными в буфере.
[in]sizeРазмер массива - максимальное количество элементов, которые можно скопировать в массив, указатель на который передается в параметре buffer.
[in,out]receivedПосле успешного выполнения функции в даннной переменной будет возвращено количество фактически скопированных элементов.
[in,out]bufferУказатель на массив, в который будут скопированы данные
Возвращает
RSH_API_SUCCESS или код ошибки.

Данная функция - аналог функции UniDriverGetData(). Отличие в том, что для передачи данных не используется специальная структура данных - можно просто передать указатель на массив нужного типа.

Предупреждения
Память под данные должна быть выделена заранее, в программе пользователя. Внутри библиотеки UniDriver происходит только копирование в переданный буфер.
unsigned __stdcall UniDriverLVGetDataInt ( unsigned int  deviceHandle,
unsigned int  getDataMode,
unsigned int  size,
unsigned int *  received,
int *  buffer 
)

Получение (передача) буфера с данными (массив int*)

Аргументы
[in]deviceHandleИдентификатор драйвера устройства, полученный в результате вызова функции UniDriverGetDeviceHandle()
[in]getDataModeДополнительные параметры (одна из констант перечисления RSH_DATA_MODES). Используйте RSH_DATA_MODE_NO_FLAGS если не требуется выполнять каких-либо дополнительных действий с данными в буфере.
[in]sizeРазмер массива - максимальное количество элементов, которые можно скопировать в массив, указатель на который передается в параметре buffer.
[in,out]receivedПосле успешного выполнения функции в даннной переменной будет возвращено количество фактически скопированных элементов.
[in,out]bufferУказатель на массив, в который будут скопированы данные
Возвращает
RSH_API_SUCCESS или код ошибки.

Данная функция - аналог функции UniDriverGetData(). Отличие в том, что для передачи данных не используется специальная структура данных - можно просто передать указатель на массив нужного типа.

Предупреждения
Память под данные должна быть выделена заранее, в программе пользователя. Внутри библиотеки UniDriver происходит только копирование в переданный буфер.
unsigned __stdcall UniDriverLVGetDataShort ( unsigned int  deviceHandle,
unsigned int  getDataMode,
unsigned int  size,
unsigned int *  received,
short *  buffer 
)

Получение (передача) буфера с данными (массив short*)

Аргументы
[in]deviceHandleИдентификатор драйвера устройства, полученный в результате вызова функции UniDriverGetDeviceHandle()
[in]getDataModeДополнительные параметры (одна из констант перечисления RSH_DATA_MODES). Используйте RSH_DATA_MODE_NO_FLAGS если не требуется выполнять каких-либо дополнительных действий с данными в буфере.
[in]sizeРазмер массива - максимальное количество элементов, которые можно скопировать в массив, указатель на который передается в параметре buffer.
[in,out]receivedПосле успешного выполнения функции в даннной переменной будет возвращено количество фактически скопированных элементов.
[in,out]bufferУказатель на массив, в который будут скопированы данные
Возвращает
RSH_API_SUCCESS или код ошибки.

Данная функция - аналог функции UniDriverGetData(). Отличие в том, что для передачи данных не используется специальная структура данных - можно просто передать указатель на массив нужного типа.

Предупреждения
Память под данные должна быть выделена заранее, в программе пользователя. Внутри библиотеки UniDriver происходит только копирование в переданный буфер.
unsigned __stdcall UniDriverLVGetDouble ( unsigned int  deviceHandle,
unsigned int  mode,
double *  value 
)

Получение информации об устройстве или библиотеке (double).

Аргументы
[in]deviceHandleИдентификатор драйвера устройства, полученный в результате вызова функции UniDriverGetDeviceHandle()
[in]modeОдна из констант перечисления RSH_GET
[in,out]valueУказатель на переменную, в которую будут помещены данные.
Возвращает
RSH_API_SUCCESS или код ошибки.

Данная функция - аналог функции UniDriverGet(). Отличие в том, что для передачи данных не используется специальная структура данных - можно просто передать указатель на переменную нужного типа.
Тип данных, указанный в описании Get-кода, который подходит для данной функции: RSH_DOUBLE

Предупреждения
Память под данные должна быть выделена заранее, в программе пользователя.
unsigned __stdcall UniDriverLVGetError ( unsigned int  error,
char *  description,
unsigned int  maxLength,
int  language 
)

Получение строки с описанием ошибки

Аргументы
[in]errorКод ошибки, полученный в результате вызова одной из функций RshUniDriver
[in,out]descriptionУказатель на массив (строку) типа char*, в который будут скопированы данные (строка с описанием ошибки).
[in]maxLengthМаксимальный размер строки (должен быть равен размеру выделенной памяти в буфере description).
[in]languageЯзык описания (одна из констант - RSH_LANGUAGE_ENGLISH или RSH_LANGUAGE_RUSSIAN)
Возвращает
RSH_API_SUCCESS или код ошибки.

Данная функция позволяет получить строку с описанием ошибки по ее коду.
Эта функция - аналог функции UniDriverGetError(), но для передачи строки не используется специальная структура.
Пример использования:

char errorDesc[1024];
printf("Function failed with error:\n[0x%08X] - %s", code, errorDesc);
Предупреждения
Память под данные должна быть выделена заранее, в программе пользователя. Внутри библиотеки UniDriver происходит только копирование в переданный буфер.
unsigned __stdcall UniDriverLVGetInt ( unsigned int  deviceHandle,
unsigned int  mode,
int *  value 
)

Получение информации об устройстве или библиотеке (int).

Аргументы
[in]deviceHandleИдентификатор драйвера устройства, полученный в результате вызова функции UniDriverGetDeviceHandle()
[in]modeОдна из констант перечисления RSH_GET
[in,out]valueУказатель на переменную, в которую будут помещены данные.
Возвращает
RSH_API_SUCCESS или код ошибки.

Данная функция - аналог функции UniDriverGet(). Отличие в том, что для передачи данных не используется специальная структура данных - можно просто передать указатель на переменную нужного типа.
Тип данных, указанный в описании Get-кода, который подходит для данной функции: RSH_S32

Предупреждения
Память под данные должна быть выделена заранее, в программе пользователя.
unsigned __stdcall UniDriverLVGetShort ( unsigned int  deviceHandle,
unsigned int  mode,
short *  value 
)

Получение информации об устройстве или библиотеке (short).

Аргументы
[in]deviceHandleИдентификатор драйвера устройства, полученный в результате вызова функции UniDriverGetDeviceHandle()
[in]modeОдна из констант перечисления RSH_GET
[in,out]valueУказатель на переменную, в которую будут помещены данные.
Возвращает
RSH_API_SUCCESS или код ошибки.

Данная функция - аналог функции UniDriverGet(). Отличие в том, что для передачи данных не используется специальная структура данных - можно просто передать указатель на переменную нужного типа.
Тип данных, указанный в описании Get-кода, который подходит для данной функции: RSH_S16

Предупреждения
Память под данные должна быть выделена заранее, в программе пользователя.
unsigned __stdcall UniDriverLVGetUChar ( unsigned int  deviceHandle,
unsigned int  mode,
unsigned char *  value 
)

Получение информации об устройстве или библиотеке (unsigned char).

Аргументы
[in]deviceHandleИдентификатор драйвера устройства, полученный в результате вызова функции UniDriverGetDeviceHandle()
[in]modeОдна из констант перечисления RSH_GET
[in,out]valueУказатель на переменную, в которую будут помещены данные.
Возвращает
RSH_API_SUCCESS или код ошибки.

Данная функция - аналог функции UniDriverGet(). Отличие в том, что для передачи данных не используется специальная структура данных - можно просто передать указатель на переменную нужного типа.
Тип данных, указанный в описании Get-кода, который подходит для данной функции: RSH_U8

Предупреждения
Память под данные должна быть выделена заранее, в программе пользователя.
unsigned __stdcall UniDriverLVGetUInt ( unsigned int  deviceHandle,
unsigned int  mode,
unsigned int *  value 
)

Получение информации об устройстве или библиотеке (unsigned int).

Аргументы
[in]deviceHandleИдентификатор драйвера устройства, полученный в результате вызова функции UniDriverGetDeviceHandle()
[in]modeОдна из констант перечисления RSH_GET
[in,out]valueУказатель на переменную, в которую будут помещены данные.
Возвращает
RSH_API_SUCCESS или код ошибки.

Данная функция - аналог функции UniDriverGet(). Отличие в том, что для передачи данных не используется специальная структура данных - можно просто передать указатель на переменную нужного типа.
Тип данных, указанный в описании Get-кода, который подходит для данной функции: RSH_U32

Предупреждения
Память под данные должна быть выделена заранее, в программе пользователя.
unsigned __stdcall UniDriverLVGetUShort ( unsigned int  deviceHandle,
unsigned int  mode,
unsigned short *  value 
)

Получение информации об устройстве или библиотеке (unsigned short).

Аргументы
[in]deviceHandleИдентификатор драйвера устройства, полученный в результате вызова функции UniDriverGetDeviceHandle()
[in]modeОдна из констант перечисления RSH_GET
[in,out]valueУказатель на переменную, в которую будут помещены данные.
Возвращает
RSH_API_SUCCESS или код ошибки.

Данная функция - аналог функции UniDriverGet(). Отличие в том, что для передачи данных не используется специальная структура данных - можно просто передать указатель на переменную нужного типа.
Тип данных, указанный в описании Get-кода, который подходит для данной функции: RSH_U16

Предупреждения
Память под данные должна быть выделена заранее, в программе пользователя.
unsigned __stdcall UniDriverStart ( unsigned int  deviceHandle)

Запуск сбора данных (генерации сигнала)

Аргументы
[in]deviceHandleИдентификатор драйвера устройства, полученный в результате вызова функции UniDriverGetDeviceHandle()
Возвращает
RSH_API_SUCCESS или код ошибки.

Вызов данной функции запускает сбор данных, либо генерацию сигнала в случае генераторов.

unsigned __stdcall UniDriverStop ( unsigned int  deviceHandle)

Остановка сбора данных (генерации сигнала)

Аргументы
[in]deviceHandleИдентификатор драйвера устройства, полученный в результате вызова функции UniDriverGetDeviceHandle()
Возвращает
RSH_API_SUCCESS или код ошибки.

Вызов данной функции останавливает сбор данных, либо генерацию сигнала в случае генераторов.