Russian Qt Forum
Ноябрь 23, 2024, 02:26 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: паттерн для драйвера  (Прочитано 3428 раз)
BuRn
Гость
« : Март 31, 2013, 10:50 »

Пишу драйвер для устройства, устройство работает на com порту. Вопрос к тем , кто хотя бы знаком с работой com порта, какой паттерн посоветуете использовать. Суть такова. Есть последовательность  "02h 10h 97h 4Ch 31h 32h 33h 03h FAh" , которая в свою очередь складывается из команды печати 4Ch, что печатаем 31h 32h 33h, пароль к устройству 10h 97h,STX ETX  02h 03h и CRC FAh , так вот, это простейшая команда , но она может быть выполнена из определенных режимов, в которые подобным образом нужно переходить. Хотел попробовать использовать паттерн "Декоратор", который будет простейшую команду заворачивать дальше и дальше до нужного мне результата. Смущает то, что будет огромное количество классов. Ранее было сделано элементарно:Функция которая вычисляла CRC + функция которая выполняла команду(4ch,...) и все это оборачивалось функцией которая в качестве аргументов просто принимала команду и блок данных. Имхо не универсально, поэтому хотелось бы заюзать какой-нибудь шаблон проектирования
Записан
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #1 : Март 31, 2013, 11:14 »

Возможно QStateMachine здесь будет к месту
Записан
BuRn
Гость
« Ответ #2 : Март 31, 2013, 11:28 »

Возможно QStateMachine здесь будет к месту
Возможно , но речь сейчас идет о более общем понятии , хотелось бы услышать мысли по архитектуре, переходы между режимами это уже вторично
Записан
kuzulis
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2812


Просмотр профиля
« Ответ #3 : Март 31, 2013, 11:58 »

ISO/OSI,

+ почитай Protocol Layer Design Pattern
Записан

ArchLinux x86_64 / Win10 64 bit
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #4 : Март 31, 2013, 12:43 »

Возможно , но речь сейчас идет о более общем понятии , хотелось бы услышать мысли по архитектуре, переходы между режимами это уже вторично
Для широкого концептуального разговора оснований/информации маловато. Практически единственное что Вы сообщили - есть команды имеющие известный формат - ну так что с того? Напр непонятно откуда опасение огромного числа классов. Много команд - ничего не попишешь, поддерживать-то все надо. Каким боком здесь декоратор - тоже хз. Так трудно рассчитывать на содержательный ответ, дело свалится в дежурные отписки ("телепаты в отпуске" и.т.п.)
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.046 секунд. Запросов: 22.