# fluid_group

SMOKE SYSTEMS A group of fluid objects.

## Vars | |

nodes | The set of fluid objects currently in this group. |
---|---|

target_size | The number of fluid object that this group wants to have contained. |

total_size | The total number of fluid objects that have ever been in this group. |

## Procs | |

add_node | Adds a fluid node to this fluid group. |

remove_node | Removes a fluid node from this fluid group. |

## Var Details

### nodes

The set of fluid objects currently in this group.

### target_size

The number of fluid object that this group wants to have contained.

### total_size

The total number of fluid objects that have ever been in this group.

## Proc Details

### add_node

Adds a fluid node to this fluid group.

Is a noop if the node is already in the group. Removes the node from any other fluid groups it is in. Syncs the group of the node with the group it is being added to (this one). Increments the total size of the fluid group.

Arguments:

- node: The fluid node that is going to be added to this group.

Returns:

- [TRUE]: If the node to be added is in this group by the end of the proc.

### remove_node

Removes a fluid node from this fluid group.

Is a noop if the node is not in this group. Nulls the nodes fluid group ref to sync it with its new state. DOES NOT decrement the total size of the fluid group.

Arguments:

- node: The fluid node that is going to be removed from this group.

Returns:

- [TRUE]: If the node to be removed is not in the group by the end of the proc.