- Страница (DBServer_MySQL) Реализация сервиса ведения БД на основе MySQL
- Может не сохранять текст, если задан код... (для экономии в БД)
- Класс CardList
(IOControl): Сделать обработку сигналов завершения
(IOControl): Сделать обработку сигналов завершения
- Класс IONotifyController
- Сделать логирование выходов
- Член 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 (ModbusRTU::ModbusAddr addr, ModbusRTU::ModbusMessage &buf, timeout_t timeout)
- Подумать Может стоит всё-таки получать весь пакет, а проверять кому он адресован на уровне выше?! Lav: конечно стоит, нам же надо буфер чистить
- Класс ObjectRepository
- получение списка начиная с элемента номер N.
- Класс ObjectsActivator
- Разобраться со всякими oaDestroy, stop, oakill и сделать одну надежную завершающую функцию.
- Член ObjectsActivator::work ()
- сделать возможность заказа других сигналов
- Член ObjectsManager_i::getObjectsInfo (in long MaxLength)
- Подумать насчет применения итератора, при слишком большом( >1000 ) количестве подчиненных объектов...
- Член TimerService::work ()
- потом можно написать самому более оптимальное решение т.к. список и так отсортирован, нужно всего лишь перемещать элемент в нужное место (у кого больше curTimeMS). Лучше поискать что-нибудь в stl...
- Член UniSetTypes::Configuration::initConfiguration (int argc, const char *const *argv)
- Надо избавляться от глобального conf (!)
- Класс UniSetTypes::IORFile
- Для оптимизации можно сделать кэширование id:node > filename
- Класс UniSetTypes::ObjectIndex_Array
- Проверить функции этого класса на повторную входимость
- Класс UniSetTypes::ObjectIndex_XML
- Проверить функции этого класса на повторную входимость
- Класс UniSetTypes::uniset_mutex
- Проверить правильность конструкторов копирования и operator=
- Класс UniSetTypes::uniset_mutex_lock
- Может на откуп пользователям оставить проверку занятости ресурса перед захватом? может не ждать?
- Класс UniversalInterface::CacheOfResolve
- Убедится в уникальности возвращаемого результата hash(...)
- Член UniXML::copyNode (xmlNode *node, int recursive=1)
- "Нужно тест написать на copyNode"