LabVIEW es un lenguaje basado en el flujo de datos. La forma en que se envía la información de un lugar a otro es mediante cables, haciendo posible dobleces y giros en cualquier dirección. Sin embargo, esto en ocasiones puede generar que sea muy difícil seguir la información, pues el código, con tantos cables y tantos giros, parece un espagueti; adicional a este inconveniente, la eficiencia del programa disminuye e incrementa su tamaño en memoria.
Existen tipos de datos como Clusters y arreglos que nos ayudan a agrupar datos y por tanto minimizar cables, éstos pueden ser agrupados y desagrupados con funciones específicas como el Bundle y Unbundle para Clusters e Index Array o Insert Into Array para arreglos.
En muchos casos requerimos desagrupar un Cluster para modificar un valor y posteriormente volverlo a agrupar, lo que crea dos copias del mismo dato en memoria, una para el dato original y otra para el modificado. Lo mismo sucede cuando buscamos un elemento en un arreglo, se hace alguna operación sobre el mismo y se vuelve a reinsertar en la misma posición.
Existe una herramienta que nos permite controlar la forma en que el compilador de LabVIEW realiza ciertas operaciones y mejora su eficiencia. La estructura In Place Element se emplea cuando queremos realizar una operación en un dato que pertenece a un arreglo, Cluster, Variant o Waveform y mantener el mismo espacio en memoria.
La estructura, In Place Element se encuentra en la paleta de Programming>>Structures. Dependiendo del tipo de dato que se vaya a emplear se pueden colocar diferentes nodos en la estructura dando click derecho sobre la misma y seleccionando las tareas que se requieran realizar.
Para arreglos
Se usa para realizar una operación en un elemento o elementos de un arreglo y regresar los elementos a la misma posición en el arreglo. Este nodo evita que se realice una copia completa del arreglo.
Divide un arreglo en subarreglos en la dimensión especificada, realiza una operación y reinserta los elementos.
Para Clusters
Se usa cuando se requieren hacer operaciones a uno o más elementos de un cluster y reemplazar los elementos en lamisma ubicación. Este nodo evita que el compilador de LabVIEW almacene una copia del cluster y de los valores de todos sus elementos en memoria.
>> Para más información de cómo emplear esta estructura puedes visitar la siguiente liga.
como se utilizan los cluster? saludos