Эта тема предоставляет обзор каждой функции, включенной в демонстрационный исходный файл адаптера, demoadaptor.cpp, сгруппированный в следующих категориях. vendoradaptor.cpp шаблон включает подобные функции.
Пожизненные функции включают тех, которые включают загрузку и разгрузку интерфейса драйвера.
|
Синтаксис |
|
|
Цель |
Инициализируйте и загрузите реализацию |
|
Входные параметры |
'none' |
|
Вывод |
'none' |
|
Статус возврата |
|
| Синтаксис | DAQStatus DemoDriver::termImpl() |
| Цель | Отключите и разгрузите реализацию daqsdk::IDriver интерфейс |
| Входные параметры | 'none' |
| Вывод | 'none' |
| Статус возврата |
|
Функции перечисления включают распознавание устройств, подсистем и каналов.
| Синтаксис | DemoDriver::enumerateDevicesImpl(Index &deviceCount) const |
| Цель | Перечислите устройства, доступные через драйвер поставщика |
| Входные параметры | 'none' |
| Вывод | Количество устройств перечисляется |
| Статус возврата |
|
| Синтаксис | DemoDriver::commitDevicesImpl(Index deviceCount) |
| Цель | Сообщите драйверу, что перечислимые устройства должны фиксироваться, в перечислимом порядке, для использования адаптером |
| Входные параметры | Количество устройств перечисляется |
| Вывод | 'none' |
| Статус возврата |
|
| Синтаксис | DemoDriver::enumerateSubsystemsImpl(Index deviceIndex, Index &subsystemCount) const |
| Цель | Перечислите подсистемы, доступные через для данного устройства |
| Входные параметры | Индекс данного устройства |
| Вывод | Количество подсистем перечисляется |
| Статус возврата |
|
| Синтаксис | DemoDriver::commitSubsystemsImpl(Index deviceIndex, Index subsystemCount) |
| Цель | Сообщите драйверу, что перечислимые подсистемы, для данного устройства, должны фиксироваться, в перечислимом порядке, для использования адаптером |
| Входные параметры | Индекс данного устройства, количество подсистем перечисляется |
| Вывод | 'none' |
| Статус возврата |
|
| Синтаксис | DemoDriver::enumerateChannelsImpl(Index deviceIndex, Index subsystemIndex, Index &channelCount) const |
| Цель | Перечислите каналы, доступные через для данной подсистемы и устройства |
| Входные параметры | Индекс данного устройства, индекс данной подсистемы |
| Вывод | Количество каналов перечисляется |
| Статус возврата |
|
| Синтаксис | DemoDriver::commitChannelsImpl(Index deviceIndex, Index subsystemIndex, Index channelCount) |
| Цель | Сообщите драйверу, что перечислимые каналы, для данного устройства и подсистемы, должны фиксироваться, в перечислимом порядке, для использования Адаптером |
| Входные параметры | Индекс данного устройства, индекс данной подсистемы, количество каналов перечисляется |
| Вывод | 'none' |
| Статус возврата |
|
| Синтаксис | DemoDriver::getChannelGroupIndexImpl(Index deviceIndex, Index subsystemIndex, Index channelIndex, Index &channelGroupIndex) const |
| Цель | Возвратите индекс группы канала, соответствующий заданному каналу |
| Входные параметры | Индекс заданного устройства, индекс заданной подсистемы, индекс заданного канала |
| Вывод | Индекс группы канала |
| Статус возврата |
|
| Синтаксис | DemoDriver::getOrderOfChannelAdditionImpl(daqsdk::OrderOfChannelsInGroup &orderOfChannelsInGroup) const |
| Цель | Возвратите перечисление, представляющее порядок, в котором индексы каналов сортируются, драйвером, в группах канала |
| Входные параметры | 'none' |
| Вывод | Порядок каналов в группах канала |
| Статус возврата |
|
Группы канала содержат список каналов, упорядоченных сначала устройством, затем подсистемой, и наконец каналом. Группа должна получить данные из требуемых каналов или в перечисленном ("Отсортированном") порядке или в требуемом ("InOrderOfAddition") порядка. Например, если группа содержит четыре канала, и пользователь запрашивает каналы 4, 2, и 1, они должны ожидаемые данные от группы канала любой в порядке 4, 2, 1 (порядок, в котором каналы были добавлены), или в (отсортированном) порядке 1, 2, 4. Смотрите Группы Канала.
| Синтаксис | DemoDriver::releaseDevicesImpl(Index deviceIndex) |
| Цель | Высвободите средства, фиксировавшие драйвером для заданного устройства |
| Входные параметры | Индекс ресурсов устройства, чтобы выпустить |
| Вывод | 'none' |
| Статус возврата |
|
| Синтаксис | DemoDriver::releaseSubsystemsImpl(Index deviceIndex, Index subsystemIndex) |
| Цель | Высвободите средства, фиксировавшие драйвером для заданной подсистемы и устройством |
| Входные параметры | Индекс ресурсов устройства, чтобы выпустить, индекс ресурсов подсистемы, чтобы выпустить |
| Вывод | 'none' |
| Статус возврата |
|
| Синтаксис | DemoDriver::releaseChannelsImpl(Index deviceIndex, Index subsystemIndex, Index channelIndex) |
| Цель | Высвободите средства, фиксировавшие драйвером для заданного канала подсистемы устройства |
| Входные параметры | Индекс ресурсов устройства, чтобы выпустить, индекс ресурсов подсистемы, чтобы выпустить, индекс ресурсов канала, чтобы выпустить |
| Вывод | 'none' |
| Статус возврата |
|
Функции управления аппаратными средствами управляют настройкой групп канала.
| Синтаксис | DemoDriver::addChannelImpl(Index deviceIndex, Index subsystemIndex, Index channelIndex) |
| Цель | Укажите заданный канал с его группой канала |
| Входные параметры | Индекс устройства, индекс подсистемы для данного устройства, индекс канала для данной подсистемы |
| Вывод | 'none' |
| Статус возврата |
|
| Синтаксис | DemoDriver::removeChannelImpl(Index deviceIndex, Index subsystemIndex, Index channelIndex) |
| Цель | Не укажите заданный канал от его группы канала |
| Входные параметры | Индекс устройства, индекс подсистемы для данного устройства, индекс канала для данной подсистемы |
| Вывод | 'none' |
| Статус возврата |
|
| Синтаксис | DemoDriver::reserveChannelGroupImpl(ChannelGroupIndex groupIndex) |
| Цель | Зарезервируйте заданную группу канала и все ее ресурсы |
| Входные параметры | Индекс группы канала |
| Вывод | 'none' |
| Статус возврата |
|
| Синтаксис | DemoDriver::unreserveChannelGroupImpl(ChannelGroupIndex groupIndex) |
| Цель | Несдержанность/релиз заданная группа канала и все ее ресурсы |
| Входные параметры | Индекс группы канала |
| Вывод | 'none' |
| Статус возврата |
|
Эти функции получают информацию об уличном торговце и устройстве.
| Синтаксис | DemoDriver::getDriverVersionImpl(uint32_T &major, uint32_T &minor, uint32_T &patch) const |
| Цель | Возвратите номер версии драйвера |
| Входные параметры | 'none' |
| Вывод | Номер основной версии, номер вспомогательной версии, номер версии патча |
| Статус возврата |
|
| Синтаксис | DemoDriver::getVendorInfoImpl(std::string &shortName, std::string &fullName, std::string &driverName) const |
| Цель | Возвратите соответствующую информацию о поставщике (имя и имя драйвера) |
| Входные параметры | 'none' |
| Вывод | Поставщик shortname (обычно используемый в качестве ID поставщика), поставщик fullname, имя драйвера (включая полный путь) |
| Статус возврата |
|
| Синтаксис | DemoDriver::getDeviceInfoImpl(Index deviceIndex, std::string &model, std::string &prefix, std::string &id, std::string &serialNumber, bool &isRecognizedDevice) const |
| Цель | Возвратите информацию о соответствующем устройстве |
| Входные параметры | Индекс устройства |
| Вывод | Модель устройства, префикс устройства (например, 'Dev', 'Audio', и т.д.), ID устройства, порядковый номер устройства, индикация относительно того, распознает ли драйвер и поддерживает устройство |
| Статус возврата |
|
| Синтаксис | DemoDriver::getFirmwareVersionImpl(Index deviceIndex, uint32_T &major, uint32_T &minor, uint32_T &patch) const |
| Цель | Возвратите номер версии микропрограммного обеспечения |
| Входные параметры | 'none' |
| Вывод | Номер основной версии, номер вспомогательной версии, номер версии патча |
| Статус возврата |
|
Эти функции получают информацию о подсистеме.
| Синтаксис | DemoDriver::getSubsystemsOfTypeImpl(Index deviceIndex, IndexList &subsystemIndices, daqsdk::Subsystem subsystemType, daqsdk::TransferDirection transferDirection) const |
| Цель | Возвратите подсистемы данного типа (Аналог, Цифровой, и т.д.) и направление (Вход, Выход) |
| Входные параметры | Индекс устройства, типа подсистемы, передает направление |
| Вывод | Список индексов подсистемы с данным типом/направлением или пустой, если никакие соответствия не найдены |
| Статус возврата |
|
| Синтаксис | DemoDriver::getMeasurementTypesImpl(Index deviceIndex, Index subsystemIndex, std::vector<daqdatatypes::MeasurementType> &measurementTypes) const |
| Цель | Возвратите типы измерения, поддержанные заданной подсистемой и устройством |
| Входные параметры | Индекс устройства, индекс подсистемы |
| Вывод | Список типов измерения поддержан заданной подсистемой |
| Статус возврата |
|
| Синтаксис | DemoDriver::getDefaultMeasurementTypeImpl(Index deviceIndex, Index subsystemIndex, daqdatatypes::MeasurementType &defaultMeasurementType) const |
| Цель | Возвратите тип измерения по умолчанию, поддержанный заданной подсистемой и устройством |
| Входные параметры | Индекс устройства, индекс подсистемы |
| Вывод | Типы измерения по умолчанию поддержаны заданной подсистемой |
| Статус возврата |
|
| Синтаксис | DemoDriver::getRateLimitImpl(Index deviceIndex, Index subsystemIndex, daqdatatypes::RateLimit &rateLimit) const |
| Цель | Возвратите ограничения скорости, поддержанные заданной подсистемой и устройством |
| Входные параметры | Индекс устройства, индекс подсистемы |
| Вывод | Ограничения скорости поддержаны заданной подсистемой |
| Статус возврата |
|
| Синтаксис | DemoDriver::getResolutionImpl(Index deviceIndex, Index subsystemIndex, uint8_T &resolution) const |
| Цель | Возвратите разрешение измерения, поддержанное заданной подсистемой и устройством |
| Входные параметры | Индекс устройства, индекс подсистемы |
| Вывод | Разрешение измерения поддержано заданной подсистемой |
| Статус возврата |
|
| Синтаксис | DemoDriver::getTerminalConfigsImpl(Index deviceIndex, Index subsystemIndex, std::vector<daqdatatypes::TerminalConfiguration> &terminalConfigurations) const |
| Цель | Возвратите терминальные настройки, поддержанные заданной подсистемой и устройством для каждого канала |
| Входные параметры | Индекс устройства, индекс подсистемы |
| Вывод | Терминальные настройки поддержаны заданной подсистемой |
| Статус возврата |
|
| Синтаксис | DemoDriver::getRangesAvailableForTerminalConfigImpl(Index deviceIndex, Index subsystemIndex, daqdatatypes::TerminalConfiguration terminalConfig, std::vector<daqdatatypes::Range> &ranges) const |
| Цель | Возвратите области значений, поддержанные заданной терминальной настройкой для подсистемы и устройства |
| Входные параметры | Индекс устройства, индекс подсистемы, терминального типа настройки |
| Вывод | Области значений поддержаны заданной терминальной настройкой для данной подсистемы |
| Статус возврата |
|
| Синтаксис | DemoDriver::getDefaultTerminalConfigsImpl(Index deviceIndex, Index subsystemIndex, std::vector<daqdatatypes::TerminalConfiguration> &defaultTerminalConfigs) const |
| Цель | Возвратите терминальные типы настройки по умолчанию, поддержанные заданной подсистемой и устройством |
| Входные параметры | Индекс устройства, индекс подсистемы |
| Вывод | Терминальные типы настройки по умолчанию поддержаны заданной подсистемой |
| Статус возврата |
|
| Синтаксис | DemoDriver::isOnDemandOperationSupportedImpl(Index deviceIndex, Index subsystemIndex, bool &isSupported) const |
| Цель | Укажите, поддерживаются ли по требованию операции заданной подсистемой и устройством |
| Входные параметры | Индекс устройства, индекс подсистемы |
| Вывод | Поддерживаются ли по требованию операции заданной подсистемой |
| Статус возврата |
|
| Синтаксис | DemoDriver::getCouplingsImpl(Index deviceIndex, Index subsystemIndex, std::vector<daqdatatypes::Coupling> &couplings) const |
| Цель | Возвратите связи, поддержанные заданной подсистемой и устройством |
| Входные параметры | Индекс устройства, индекс подсистемы |
| Вывод | Связи поддержаны заданной подсистемой |
| Статус возврата |
|
| Синтаксис | DemoDriver::getDefaultCouplingImpl(Index deviceIndex, Index subsystemIndex, daqdatatypes::Coupling &defaultCoupling) const |
| Цель | Возвратите связь значения по умолчанию, поддержанную заданной подсистемой и устройством |
| Входные параметры | Индекс устройства, индекс подсистемы |
| Вывод | Связь значения по умолчанию поддержана заданной подсистемой |
| Статус возврата |
|
| Синтаксис | DemoDriver::getSampleTypesImpl(Index deviceIndex, Index subsystemIndex, std::vector<daqdatatypes::SampleType> &sampleTypes) const |
| Цель | Возвратите демонстрационные типы, поддержанные заданной подсистемой и устройством |
| Входные параметры | Индекс устройства, индекс подсистемы |
| Вывод | Демонстрационные типы поддержаны заданной подсистемой |
| Статус возврата |
|
| Синтаксис | DemoDriver::getDefaultSamplingTypeImpl(Index deviceIndex, Index subsystemIndex, daqdatatypes::SampleType &defaultSampleType) const |
| Цель | Возвратите демонстрационный тип по умолчанию, поддержанный заданной подсистемой и устройством |
| Входные параметры | Индекс устройства, индекс подсистемы |
| Вывод | Демонстрационный тип по умолчанию поддержан заданной подсистемой |
| Статус возврата |
|
| Синтаксис | DemoDriver::getDigitalChannelTypesImpl(Index deviceIndex, Index subsystemIndex, std::vector<daqdatatypes::MeasurementType> &channelMeasurementTypes) const |
| Цель | Возвратите цифровой тип канала, поддержанный заданной подсистемой и устройством |
| Входные параметры | Индекс устройства, индекс подсистемы |
| Вывод | Вектор типов измерения для каналов заданной подсистемы |
| Статус возврата |
|
| Синтаксис | DemoDriver::getChannelNamesImpl(Index deviceIndex, Index subsystemIndex, std::vector<std::string> &channelNames) const |
| Цель | Возвратите названия канала, поддержанные заданной подсистемой и устройством |
| Входные параметры | Индекс устройства, индекс подсистемы |
| Вывод | Названия канала поддержаны заданной подсистемой |
| Статус возврата |
|
Функции конфигурирования управляют уровнями, областями значений и связью.
| Синтаксис | DemoDriver::getRateImpl(ChannelGroupIndex groupIndex, daqsdk::float64 &rate) const |
| Цель | Возвратите уровень, поддержанный заданной группой канала в ее текущей настройке |
| Входные параметры | Индекс группы |
| Вывод | Уровень поддержан заданной группой канала |
| Статус возврата |
|
| Синтаксис | DemoDriver::setRateImpl(ChannelGroupIndex groupIndex, daqsdk::float64 rate) |
| Цель | Установите уровень для заданной группы канала в ее текущей настройке |
| Входные параметры | Индекс группы, уровня |
| Вывод | 'none' |
| Статус возврата |
|
| Синтаксис | DemoDriver::getChannelCouplingImpl(Index deviceIndex, Index subsystemIndex, Index channelIndex, daqdatatypes::Coupling &coupling) const |
| Цель | Возвратите связь канала заданного канала для данной подсистемы и устройства |
| Входные параметры | Индекс устройства, индекс подсистемы, индекс канала |
| Вывод | Связь поддерживаемого заданным каналом |
| Статус возврата |
|
| Синтаксис | DemoDriver::setChannelCouplingImpl(Index deviceIndex, Index subsystemIndex, Index channelIndex, std::string coupling) |
| Цель | Установите связь канала заданного канала для данной подсистемы и устройства |
| Входные параметры | Индекс устройства, индекс подсистемы, индекс канала |
| Вывод | 'none' |
| Статус возврата |
|
| Синтаксис | DemoDriver::getChannelTerminalConfigImpl(Index deviceIndex, Index subsystemIndex, Index channelIndex, daqdatatypes::TerminalConfiguration &terminalConfig) const |
| Цель | Возвратите терминальную настройку заданного канала для данной подсистемы и устройства |
| Входные параметры | Индекс устройства, индекс подсистемы, индекс канала |
| Вывод | Терминальная настройка поддержана заданным каналом |
| Статус возврата |
|
| Синтаксис | DemoDriver::setChannelTerminalConfigImpl(Index deviceIndex, Index subsystemIndex, Index channelIndex, std::string terminalConfig) |
| Цель | Установите терминальную настройку заданного канала для данной подсистемы и устройства |
| Входные параметры | Индекс устройства, индекс подсистемы, индекс канала |
| Вывод | 'none' |
| Статус возврата |
|
| Синтаксис | DemoDriver::getChannelRangeImpl(Index deviceIndex, Index subsystemIndex, Index channelIndex, daqdatatypes::Range &range) const |
| Цель | Возвратите область значений заданного канала для данной подсистемы и устройства |
| Входные параметры | Индекс устройства, индекс подсистемы, индекс канала |
| Вывод | Область значений поддержана заданным каналом |
| Статус возврата |
|
| Синтаксис | DemoDriver::setChannelRangeImpl(Index deviceIndex, Index subsystemIndex, Index channelIndex, daqdatatypes::Range range) |
| Цель | Установите область значений заданного канала для данной подсистемы и устройства |
| Входные параметры | Индекс устройства, индекс подсистемы, индекс канала |
| Вывод | 'none' |
| Статус возврата |
DAQErr_Driver_SetChannelRange на отказе.
|
| Синтаксис | DemoDriver::getChannelDirectionImpl(Index deviceIndex, Index subsystemIndex, Index channelIndex, daqdatatypes::ChannelDirection &direction) const |
| Цель | Возвратите направление заданного цифрового канала для данной подсистемы и устройства |
| Входные параметры | Индекс устройства, индекс подсистемы, индекс канала |
| Вывод | Направление канала для заданного канала. |
| Статус возврата |
|
| Синтаксис | DemoDriver::setChannelDirectionImpl(Index deviceIndex, Index subsystemIndex, Index channelIndex, std::string direction) |
| Цель | Установите направление заданного цифрового канала для данной подсистемы и устройства |
| Входные параметры | Индекс устройства, индекс подсистемы, индекс канала, направление канала, заданного как "Input" или "Output" |
| Вывод | 'none' |
| Статус возврата |
|
Резервирование функционирует устройство запроса и доступность канала.
| Синтаксис | DemoDriver::isDeviceAvailableImpl(Index deviceIndex, bool &isDeviceAvailable) const |
| Цель | Возвратитесь, доступно ли заданное устройство все еще, соединяется, фиксировавшее и перечисленное |
| Входные параметры | Индекс устройства |
| Вывод | Возвратитесь, доступно ли устройство, как ранее фиксируется и перечислено |
| Статус возврата |
|
| Синтаксис | DemoDriver::isRegistrationReservationImpl(Index deviceIndex, bool &isReservation) const |
| Цель | Возвратитесь, резервирует ли регистрация канала в группе канала группу канала |
| Входные параметры | Индекс группы канала |
| Вывод | Возвратитесь, является ли “регистрация резервированием”. (См. Группы Канала.) |
| Статус возврата |
|
Одна функции сканирования получают или генерируют статическое сканирование данных.
| Синтаксис | DemoDriver::inputSingleScanImpl(ChannelGroupIndex groupIndex, DataScan &data) const |
| Цель | Получите сканирование данных для всех каналов, указанных с группой канала |
| Входные параметры | 'none' |
| Вывод | Полученное сканирование данных |
| Статус возврата |
|
| Синтаксис | DemoDriver::outputSingleScanImpl(ChannelGroupIndex groupIndex, DataScan &&outputData) const |
| Цель | Сгенерируйте сканирование данных для всех каналов, указанных с группой канала |
| Входные параметры | Данные, чтобы сгенерировать выход |
| Вывод | 'none' |
| Статус возврата |
|