UniSet  2.2.1
Список задач
Страница (DBServer_MySQL) Реализация сервиса ведения БД на основе MySQL
Может не сохранять текст, если задан код... (для экономии в БД)
Страница (DBServer_SQLite) Реализация сервиса ведения БД на основе SQLite
Может не сохранять текст, если задан код... (для экономии в БД)
Класс CardList
(IOControl): Сделать обработку сигналов завершения
Класс IONotifyController
Сделать логирование выходов
Класс LT_Object
Подумать.. может перейти на unordered_map
Член ModbusClient::recv (ModbusRTU::ModbusAddr addr, ModbusRTU::ModbusByte qfunc, ModbusRTU::ModbusMessage &rbuf, timeout_t timeout)
Подумать Может стоит всё-таки получать весь пакет, а проверять кому он адресован на уровне выше?! Lav: конечно стоит, нам же надо буфер чистить
Член ModbusRTU::ForceCoilsRetMessage::init (ModbusMessage &m)

(WriteOutputRetMessage): необходимо встроить проверку на корректность данных

(WriteOutputRetMessage): необходимо встроить проверку на корректность данных

Член ModbusRTU::ForceSingleCoilRetMessage::init (ModbusMessage &m)

(ForceSingleCoilRetMessage): необходимо встроить проверку на корректность данных

(ForceSingleCoilRetMessage): необходимо встроить проверку на корректность данных

Класс ModbusRTU::ModbusMessage
Может переименовать ModbusMessage в TransportMessage?
Член ModbusRTU::WriteOutputRetMessage::init (ModbusMessage &m)

(WriteOutputRetMessage): необходимо встроить проверку на корректность данных

(WriteOutputRetMessage): необходимо встроить проверку на корректность данных

Член ModbusRTU::WriteSingleOutputRetMessage::init (ModbusMessage &m)

(WriteSingleOutputRetMessage): необходимо встроить проверку на корректность данных

(WriteSingleOutputRetMessage): необходимо встроить проверку на корректность данных

Класс ModbusRTUMaster
Добавить ведение статистики по ошибкам
Класс ModbusRTUSlave

Разобратся с тем как отвечать на неправильные запросы! Формат ответных сообщений!!! Коды ошибок!!!

Доработать terminate, чтобы можно было прервать ожидание

Член ModbusServer::recv (const std::unordered_set< ModbusRTU::ModbusAddr > &vaddr, ModbusRTU::ModbusMessage &buf, timeout_t timeout)
Подумать Может стоит всё-таки получать весь пакет, а проверять кому он адресован на уровне выше?! Lav: конечно стоит, нам же надо буфер чистить
Класс ObjectRepository
получение списка начиная с элемента номер N.
Член TCPCheck::ping (const std::string &_ip, timeout_t tout=1000, timeout_t sleep_msec=200, const std::string &ping_argc="-c 1 -w 0.1 -q -n")
Возможно стоит написать свою реализацию ping
Член UniSetManager_i::getObjectsInfo (in long MaxLength, in long userparam)
Подумать насчет применения итератора, при слишком большом( >1000 ) количестве подчиненных объектов...
Класс UniSetTypes::IORFile
Для оптимизации можно сделать кэширование id:node > filename
Член UniSetTypes::key (const UniSetTypes::ObjectId id, const UniSetTypes::ObjectId node)
Желательно продумать что-нибудь с использованием хэш.
Класс UniSetTypes::ObjectIndex_Array
Проверить функции этого класса на повторную входимость
Класс UniSetTypes::ObjectIndex_XML
Проверить функции этого класса на повторную входимость
Член UniSetUDP::UDPHeader::dcount
может лучше использовать системно-независимый unsigned long, чем size_t?
Член UniXML::copyNode (xmlNode *node, int recursive=1)
"Нужно тест написать на copyNode"
Класс VMonitor
Нужно добавить поддержку "пользовательских типов" (возможно нужно использовать variadic templates)