Различия
Здесь показаны различия между двумя версиями данной страницы.
| Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
|
doc:vsq:development:providerdbmessage [2012/10/29 08:38] alexi |
doc:vsq:development:providerdbmessage [2013/05/12 20:35] (текущий) jamis7005 |
||
|---|---|---|---|
| Строка 7: | Строка 7: | ||
| Взаимодействие этих компонентов должно происходить через интерфейс базового класса [[doc:vsq:development:vsqdataprovider|]] ([[doc:vsq:development:dpfirebirddb|]] наследует его). | Взаимодействие этих компонентов должно происходить через интерфейс базового класса [[doc:vsq:development:vsqdataprovider|]] ([[doc:vsq:development:dpfirebirddb|]] наследует его). | ||
| - | === [[doc:vsq:development:visinfopanel|]] === | + | Иерархия классов: [[doc:vsq:index|]] |
| + | |||
| + | === VisInfoPanel === | ||
| Класс уже создан. Необходимо доработать функциональность: | Класс уже создан. Необходимо доработать функциональность: | ||
| - Соединение с поставщиком данных | - Соединение с поставщиком данных | ||
| - | - Переодический запрос информации и отображение её | + | - Переодический запрос информации и отображение её (текущее, первое по времени из активных) |
| - Подтвержение реакции ползователя. По клику, отметить сообщение как подтверждённое. | - Подтвержение реакции ползователя. По клику, отметить сообщение как подтверждённое. | ||
| - | === [[doc:vsq:development:dpfirebirddb|]] === | + | === DpFirebirdDB === |
| - Создать класс унаследовав [[doc:vsq:development:vsqdataprovider|]] | - Создать класс унаследовав [[doc:vsq:development:vsqdataprovider|]] | ||
| - | - В [[doc:vsq:development:vsqdataprovider|]] добавить фунции: | + | - В [[doc:vsq:development:vsqdataprovider|]] добавить необходимые фунции взаимодействия с компонентами визуализации. |
| - | * void getMessages(DpAlarmMessage *messages, DpAlarmMessage::Flags flags) - возвращает список сообщений соответствующие маске флагов | + | - добавить необходимые свойства для хранения информации о сооединении с базой данных |
| - | - | + | - релиализовать фунциональность работы с базой данных |
| + | |||
| + | Функции взаимодействия с компонентами визуализации: | ||
| + | * void getMessages(DpAlarmMessage *messages, DpAlarmMessage::States flags) - возвращает список сообщений соответствующие маске флагов | ||
| + | * bool setMessageState(DpAlarmMessage messages, DpAlarmMessage::State newState) - установливает новое состояние | ||
| + | |||
| + | Пример реализации базовой функциональности: RpSvrTcpClient | ||
| === DpAlarmMessage === | === DpAlarmMessage === | ||
| + | |||
| + | Создать класс в заголовочном файле [[doc:vsq:development:vsqdataprovider|]]. | ||
| + | Без базового класса. | ||
| + | Функции: | ||
| + | - Чтение времени сообщения (запись при создании объекта) | ||
| + | - Чтение сообщения (QString, запись при создании) | ||
| + | - Чтение/запись состояния (перечисление) | ||
| + | |||
| + | Дополнение: | ||
| + | <code cpp> | ||
| + | class VsqRule; | ||
| + | |||
| + | class VsqMessageTag : public VsqTag | ||
| + | { | ||
| + | public: | ||
| + | QString name(); | ||
| + | VsqRule *rule(); | ||
| + | }; | ||
| + | |||
| + | class VsqRule | ||
| + | { | ||
| + | public: | ||
| + | bool isCorrect(VsqMessageTag *VsqMessageTag); | ||
| + | |||
| + | }; | ||
| + | |||
| + | class VsqMessage { | ||
| + | public: | ||
| + | QDateTime getDT(); | ||
| + | QString getString(); | ||
| + | }; | ||
| + | </code> | ||