Rsh API
SDK 2.1
Документация по программированию
|
Класс для работы с dll. Подробнее...
#include <RshDllClient.h>
Открытые типы | |
enum | LibraryType { libraryDriver = 0, libraryBase = 1, libraryDPA = 2 } |
Список типов библиотек. Подробнее... | |
Открытые члены | |
RshDllClient () | |
~RshDllClient () | |
U32 | Free () |
Выгрузка всех библиотек. Подробнее... | |
U32 | GetLibraryInterface (RshDllInterfaceKey &key, const std::string &interfaceName=std::string("")) |
Получение интерфейса библиотеки. Подробнее... | |
U32 | GetDPALibraryInterface (RshDllInterfaceKey &key) |
Получение интерфейса библиотеки DPA. Подробнее... | |
U32 | GetDeviceInterface (RshDllInterfaceKey &key) |
Получение интерфейса устройства (IRshDevice). Подробнее... | |
Открытые статические члены | |
static U32 | GetRegisteredList (std::vector< std::string > &list, RshDllClient::LibraryType libType=libraryDriver) |
Получение списка зарегистрированных библиотек. Подробнее... | |
Класс для работы с dll.
Данный класс упрощает работу с динамическими библиотеками. Используя данный класс, можно вызвав всего один метод получить готовый к работе объект с интерфейсом IRshDevice из библиотеки абстракции устройства.
Список типов библиотек.
Типы из этого списка используются в методе GetRegisteredList() и определяют ветку реестра, в которй будет производиться поиск зарегистрированных библиотек.
Элементы перечислений | |
---|---|
libraryDriver |
Драйверы (библиотеки абстракции) устройств |
libraryBase |
Базовые библиотеки |
libraryDPA |
Библиотеки алгоритмов DPA. |
RshDllClient::RshDllClient | ( | ) |
RshDllClient::~RshDllClient | ( | ) |
U32 RshDllClient::Free | ( | ) |
Выгрузка всех библиотек.
Используя данный метод, можно выгрузить все библиотеки, которые были загружены с помощью класса RshDllClient.
Перекрестные ссылки RSH_API_SUCCESS.
Используется в ~RshDllClient().
U32 RshDllClient::GetDeviceInterface | ( | RshDllInterfaceKey & | key) |
Получение интерфейса устройства (IRshDevice).
[in,out] | key | Объект класса RshDllInterfaceKey, который содержит имя нужной библиотеки и указатель на объект IRshDevice. После успешного вызова метода, переданный указатель будет ссылаться на инстанцированный объект, который можно использовать для управления устройством. |
Данный метод используется для инстанцирования объектов с интерфейсом устройства (IRshDevice) из динамических библиотек, зарегистрированных в реестре Windows в ветке Drivers.
U32 RshDllClient::GetDPALibraryInterface | ( | RshDllInterfaceKey & | key) |
Получение интерфейса библиотеки DPA.
[in,out] | key | Объект класса RshDllInterfaceKey, который содержит имя нужной библиотеки и указатель на объект класса библиотеки. После успешного вызова метода, переданный указатель будет ссылаться на инстанцированный объект. |
Данный метод используется для инстанцирования классов с интерфейсом IDPA (Data processing algorithms) из динамических библиотек, зарегистрированных в ветке Base library\DPA реестра Windows.
Данный метод является аналогом метода GetLibraryInterface(), отличие - ветка в реестре, в которой выполняется поиск, а также то, что интерфейс жестко задан (IDPA).
U32 RshDllClient::GetLibraryInterface | ( | RshDllInterfaceKey & | key, |
const std::string & | interfaceName = std::string("") |
||
) |
Получение интерфейса библиотеки.
[in,out] | key | Объект класса RshDllInterfaceKey, который содержит имя нужной библиотеки и указатель на объект класса библиотеки. После успешного вызова метода, переданный указатель будет ссылаться на инстанцированный объект. |
[in] | interfaceName | Имя интерфейса библиотеки. В большинстве случаев, этот параметр можно не указывать, т.к. обычно загружаемые библиотеки имеют имя интерфейса, соответствующее имени самой библиотеки: например, PLX9054 (имя в реестре) и IPLX9054 (название интерфейса). |
Данный метод используется для инстанцирования классов из динамических библиотек, зарегистрированных в ветке Base library реестра Windows.
|
static |
Получение списка зарегистрированных библиотек.
[in,out] | list | Список (std::vector<std::string>) который будет заполнен. Переданный в метод список будет очищен перед заполнением. После успешного завершения работы метода в нем будет содержаться список всех зарегистрированных в системе библиотек заданного типа. |
[in] | libType | Тип библиотеки. Одна из констант перечисления RshDllClient::LibraryType. |
Данный метод используется для получения списка зарегистрированных библиотек из реестра Windows. Полученные имена библиотек могут быть использованы для инстанцирования объектов с помощью метода GetDeviceInterface() и других подобных.
Перекрестные ссылки libraryBase, libraryDPA, libraryDriver, RSH_API_REGISTRY_KEYCANTOPEN и RSH_API_SUCCESS.