Программирование в NI Labview
LabVIEW > Функции для работы с кластерами

Функции для работы с кластерами

Эти функции находятся в палитре Functions>>All Functions>>Cluster и позволяют создавать кластеры и управлять ими.

Сборка кластеров.

Используйте функцию Bundle для того, чтобы объединить отдельные элементы в кластер или чтобы изменить значения отдельных элементов в уже существующем кластере. Изменить количество терминалов у функции можно просто растянув ее, или щелкнуть правой кнопкой мыши и выбрать Add Input. Если вы соедините вход cluster с каким-нибудь кластером, то число входов для элементов должно совпадать с числом элементов в этом кластере.

Если вход cluster подключен, то можно подсоединить только те элементы, значение которых вы хотите изменить. Пример: есть кластер, состоящий из трех элементов.

Можно использовать функцию bundle для того, чтобы изменить значение элемента Command, так, как показано на рисунке:


Замена и доступ к элементам кластера.

Используйте функцию Bundle by Name для того, чтобы получить доступ к элементу кластера по его имени (метке). Эта функция работает почти так же, как и функция Bundle, но она ссылается на элементы кластера, используя их имена. Число входов не обязательно должно совпадать с числом элементов в кластере - вы можете обратиться только к тем элементам, которые нужны.

Пример: с помощью функции Bundle by Name изменяем значения элементов Command и Function.
Если в процессе работы над программой понадобится добавить в кластер еще один элемент или изменить порядок элеменов, то при использовании функции Bundle by Name менять все будет не нужно, т.к. порядок и состав элементов в кластере не важен, а важны только имена.

Разборка кластеров.

Есть две функции для того, чтобы разбить кластер обратно на отдельные элементы - это функции Unbundle  и Unbundle by Name. Думаю, по аналогии с функциями образования кластеров все должно быть понятно.

В этом примере исходный кластер "расщепляется" с помощью этих двух функций. С помощью функции Unbundle by Name можно оставить только те элементы, которые нас интересуют в данный момент. При использовании обычной функции Unbundle будут возвращены все существующие элементы кластера.


Ссылки: