---
name: "lqr_carver_attach"
section: "3"
platform: "linux"
package: "liblqr-1-0-dev"
version: "0.4.1-2"
release: "Debian 7 (Wheezy)"
platforms: ["linux"]
url: "https://new.carta.tech/lqr_carver_attach"
---

# lqr\_carver\_attach(3)

attach an LqrCarver to another LqrCarver

## NAME

lqr\_carver\_attach - attach an LqrCarver to another LqrCarver

## SYNOPSIS

```
#include <lqr.h>
```

**LqrRetVal lqr\_carver\_attach(LqrCarver\*** *carver***, LqrCarver\*** *aux***);**

## DESCRIPTION

The function **lqr\_carver\_attach** is used to attach an LqrCarver object (pointed to by *aux*) to another one (pointed to by *carver*). This will have the effect that each operation performed over the *carver* object will be reflected on *aux* (they will share the same visibility map).

This function must not be used after a visibility map was loaded into the base object (the one pointed to by *carver*).

The object pointed to by *aux* must have the same original size as the base object. Note that the original size information is reset whenever a flattening operation occurs, or the rescaling direction changes, so that this function should be called befor rescaling occurs.

There is no limitation on the number of LqrCarver objects which is possible to attach. Nesting is also possible. It is irrelevant if the *aux* carver is initialised or not; from the moment of attachment, it will passively undergo all transformations performed over *carver*.

## RETURN VALUE

The return value follows the Liquid Rescale library signalling system. **LQR\_ERROR** is returned if the sizes of *carver* and *aux* don´t match.

## SEE ALSO

[**LqrRetVal**(3)](/LqrRetVal/3.md), [**lqr\_carver\_list\_start**(3)](/lqr_carver_list_start/3.md), [**lqr\_carver\_list\_current**(3)](/lqr_carver_list_current/3.md), [**lqr\_carver\_list\_next**(3)](/lqr_carver_list_next/3.md), [**lqr\_carver\_list\_foreach**(3)](/lqr_carver_list_foreach/3.md)

## COPYRIGHT

Copyright © 2007-2009 Carlo Baldassi\
