UniSet  2.6.0
Открытые члены | Защищенные члены | Полный список членов класса
Класс UProxyObject

Открытые члены

 UProxyObject (const std::string &name) throw (UException)
 
 UProxyObject (long id) throw (UException)
 
void addToAsk (long id) throw (UException)
 
long getValue (long id) throw (UException)
 
float getFloatValue (long id) throw (UException)
 
void setValue (long id, long val) throw (UException)
 
bool askIsOK ()
 
bool reaskSensors ()
 
bool updateValues ()
 
bool smIsOK ()
 

Защищенные члены

void init (long id) throw ( UException )
 

Подробное описание

Интерфейс для взаимодействия с SM (с заказом датчиков). Текущая версия рассчитана на наличие локальной SM, т.е. в функциях нет аргумента node. Соответственно обращение к датчику на другом узле НЕВОЗМОЖНО.

Если всё-таки понадобится - доработаем.

Общее описание: Перед активацией объекта необходимо при помощи addToAsk() добавить список датчиков, за которыми требуется "следить". После активации ( см. PyUInterface uniset_activate_objects() ) (в асинхронном режиме!) объект заказывает датчики и сохраняет у себя их состояние. При этом "снаружи" можно запросить значение ранее добавленного датчика при помощи фунции getValue(). Помимо этого можно изменять состояние датчиков (в SM!) при помощи setValue(). По сути setValue() просто дублирует функциональность PyUInterface::setValue()

Методы

void UProxyObject::addToAsk ( long  id)
throw (UException
)
Заметки
Вызывать надо до активации объекта
bool UProxyObject::askIsOK ( )
Возвращает
true если заказ датчиков прошёл успешно
bool UProxyObject::reaskSensors ( )

перезаказ датчиков

void UProxyObject::setValue ( long  id,
long  val 
)
throw (UException
)

Сохраняемые датчики не требуют добавления при помощи addToAsk !

bool UProxyObject::smIsOK ( )

Проверка работы SM

bool UProxyObject::updateValues ( )

принудительное обновление значений. В случае если не используется заказ датчиков