Описание базовых классов AgavaSCADA/AgavaPLC: различия между версиями
Перейти к навигации
Перейти к поиску
5
5.1
м (TaushkanovKV переименовал страницу Описание свойств, полей и методов базовых классов AgavaPLC/AgavaSCADA в Описание базовых классов AgavaSCADA/AgavaPLC) |
(→Методы) |
||
(не показаны 2 промежуточные версии этого же участника) | |||
Строка 31: | Строка 31: | ||
===Методы=== | ===Методы=== | ||
− | string SignalValue::ToString() | + | string SignalValue::ToString() ///< Преобразовать значение в строку |
− | double SignalValue::ToDouble() | + | double SignalValue::ToDouble() ///< Преобразовать значение в double |
− | int SignalValue::ToInt() | + | int SignalValue::ToInt() ///< Преобразовать значение в int |
void SignalValue::SetValue(string& value) | void SignalValue::SetValue(string& value) | ||
void SignalValue::SetValue(int value) | void SignalValue::SetValue(int value) | ||
void SignalValue::SetValue(double value) | void SignalValue::SetValue(double value) | ||
+ | |||
+ | bool SignalValue::IsNumber() ///< Значение является числовым | ||
+ | bool SignalValue::IsError() ///< Значение является ошибкой | ||
+ | |||
+ | === Примеры === | ||
+ | '''void fnIncrementSource(BasicSource_t &source)''' | ||
+ | { | ||
+ | SignalValue sv = source.GetValue(); | ||
+ | |||
+ | if (sv.IsNumber() == true) | ||
+ | { | ||
+ | int iVal = sv.ToInt(); | ||
+ | iVal++; | ||
+ | |||
+ | sv = SignalValue(iVal); | ||
+ | } | ||
+ | else | ||
+ | { | ||
+ | sv = SignalValue(0); | ||
+ | } | ||
+ | |||
+ | source.SetValue(sv); | ||
+ | } | ||
+ | |||
==BasicSource== | ==BasicSource== | ||
Предок: BasicNode. | Предок: BasicNode. | ||
Строка 55: | Строка 79: | ||
uint8 m_ucPriority ///< Приоритет. 0 - максимальный. Не используется. | uint8 m_ucPriority ///< Приоритет. 0 - максимальный. Не используется. | ||
===Методы=== | ===Методы=== | ||
− | int BasicSource::WriteValue(SignalValue sv) ///< Установка собственного значения с записью значения устройство. | + | int BasicSource::WriteValue(SignalValue sv) ///< Установка собственного значения с записью значения в устройство. |
==<s>BasicWindow</s>== | ==<s>BasicWindow</s>== | ||
===<s>Методы</s>=== | ===<s>Методы</s>=== |
Текущая версия на 15:21, 3 октября 2024
В данном документе описываются свойства, поля и методы базовых классов AgavaPLC/AgavaSCADA, взаимодействие с которыми доступно в функциях, классах и программах приложений.
Данный документ применим к AgavaSCADA/AgavaPLC версии 1.5 и старше (новее).
1 BasicNode
Предок: нет.
1.1 Конструкторы
BasicNode::BasicNode(string path) ///< Создание узла по пути в проекте
1.2 Методы
string BasicNode::GetName() string BasicNode::GetShortName() string BasicNode::GetDescription()
void BasicNode::SetName(string name) void BasicNode::SetShortName(string shortname) void BasicNode::SetDescription(string description)
string BasicNode::GetPath() ///< Получение пути узла в проекте
void BasicNode::Start() void BasicNode::Stop()
2 SignalValue
Предок: нет.
2.1 Конструкторы
SignalValue::SignalValue(int value) SignalValue::SignalValue(double value) SignalValue::SignalValue(string value)
2.2 Методы
string SignalValue::ToString() ///< Преобразовать значение в строку double SignalValue::ToDouble() ///< Преобразовать значение в double int SignalValue::ToInt() ///< Преобразовать значение в int
void SignalValue::SetValue(string& value) void SignalValue::SetValue(int value) void SignalValue::SetValue(double value)
bool SignalValue::IsNumber() ///< Значение является числовым bool SignalValue::IsError() ///< Значение является ошибкой
2.3 Примеры
void fnIncrementSource(BasicSource_t &source) { SignalValue sv = source.GetValue(); if (sv.IsNumber() == true) { int iVal = sv.ToInt(); iVal++; sv = SignalValue(iVal); } else { sv = SignalValue(0); } source.SetValue(sv); }
3 BasicSource
Предок: BasicNode.
3.1 Методы
SignalValue BasicSource::GetValue() ///< Получение значения. int BasicSource::SetValue(SignalValue sv) ///< Установка собственного значения с установкой значений связанных узлов (источников). int BasicSource::UpdateValue(SignalValue sv) ///< Установка собственного значения.
4 ModbusRegister
Предок: BasicSource.
4.1 Поля
uint8 m_ucDeviceNo ///< Номер устройства. uint8 m_ucReadFunctionNo ///< Номер функции чтения. uint16 m_wReadRegisterNo ///< Номер регистра чтения. uint8 m_ucWriteFunctionNo ///< Номер функции записи. uint16 m_wWriteRegisterNo ///< Номер регистра записи. uint8 m_ucSize ///< Размер регистра в битах. uint8 m_ucPriority ///< Приоритет. 0 - максимальный. Не используется.
4.2 Методы
int BasicSource::WriteValue(SignalValue sv) ///< Установка собственного значения с записью значения в устройство.
5 BasicWindow
5.1 Методы
void BasicWindow::Show() ///< Отображение окна. void BasicWindow::Hide() ///< Сокрытие окна.