Отдельная dll с функциями для драйверов

Стартовая страница › Форумы › Разработка и интеграция › Отдельная dll с функциями для драйверов

Просмотр 6 сообщений - с 1 по 6 (из 6 всего)
  • Автор
    Записи
  • #9493
    manjey73
    Участник

    Михаил, может стоит в Scada добавить отдельную библиотеку с различными функциями для драйверов ?
    Вот пример — расчет контрольной суммы Modbus. Она используется и в счетчиках Меркурий и в других приборах встречал. Имеет смысл такие функции вынести в отдельную библиотеку с описанием вызовов. Ну и отдать ее на растерзание сообщества, чтобы все могли в нее добавлять функционал и после ваших проверок и правок включать в очередные релизы Scada с описанием, что в нее вошло. Не надо будет в драйверах постоянно писать одно и то же..

    #9495
    Mikhail
    Модератор

    Возможно, лучше сделать несколько более специализированных DLL, имеющих определённую направленность.
    Давайте обсудим, какие функции будет полезно включить в одну или несколько общих библиотек для Коммуникатора?

    #9500
    manjey73
    Участник

    1. Расчеты контрольных сумм
    2. Преобразования типов, например BCD to Dec и обратно. То есть не те, которые есть в C#
    3. Битовые операции ROR, ROL
    4. Переставления байт в массивах.
    5. Конвертация строки в HEX формат.
    6. Работа с массивами типа перевернуть массив байт. Вроде есть в C#, я использовал, но добавил проверку на какой архитектуре мы работаем. Правда сомневаюсь что мне попадется железка с BigEndian на которую Scada станет.
    7. Дополнительные функции, которые бы упростили работу с драйверами, типа чтения атрибутов xml в списки независимо от имени атрибута и их количества.

    Чтобы такие вещи были заложены в библиотеки Scada и в каждом драйвере не приходилось писать каждый раз одно и то же.

    #9541
    Mikhail
    Модератор

    Общий репозиторий я уже создал https://github.com/RapidScada/scada-community
    Но наверное его лучше использовать для модулей с заранее заданными границами функционала, которые будут дорабатываться всеми желающими.

    В данном случае предполагается создание библиотеки, которая будет постоянно дополняться и её рост очень сложно модерировать. Пока опасаюсь размещать такую библиотеку в общем репозитории — мне надо поучиться модерированию кода на чём-то более осязаемом.
    manjey73, сделайте такую библиотеку пока в своём репозитории, хорошо?

    #9546
    manjey73
    Участник

    Да я и не говорил про модерацию какой-то общей библиотеки, люди могут просто куда-то выкладывать с описанием приборов, где это встречается, а вы уже добавлять и отмечать это в Документации в разделе для Разработчика с описанием вызова, возвращаемых значений. Просто следующие уже не будут вписывать это в драйвер а сразу использовать встроенную библиотеку.

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

    • Ответ изменён 8 лет, 5 месяцев назад пользователем manjey73.
    #9552
    Mikhail
    Модератор

    такого раздела не хватает в Документации, с описанием уже существующих функций встроенных библиотек и описания использования этих функций

    Согласен. Надеюсь, что когда-нибудь руки до этого дойдут. Или кто-нибудь поможет.

Просмотр 6 сообщений - с 1 по 6 (из 6 всего)
  • Для ответа в этой теме необходимо авторизоваться.