GENLIB_FLATTEN_ALL_PHINS.3alc man page

GENLIB_FLATTEN_ALL_PHINS — flatten all instances in the current layout figure

Synopsis

#include <genlib.h>
void GENLIB_FLATTEN_ALL_PHINS(concat, catal)
char concat, catal;

Parameter

concat

Indicate whether or not to concatenate instance name to instance' objects name

catal

Indicate whether or not to look in the catalog file before flattening a cell

Description

FLATTEN_ALL_PHINS inserts the contents of all the instances of the current figure in the current figure. All these instances are destroyed during the process, and therefore cannot be referred to later in the layout description.
The concat parameter may take two values:

YES

to concatenate object name with instance names.

NO

to copy object names.

In most case, the concat value must be YES, in order to warranty the unicity of names in the figure. It may otherwise fail, because the function would try to add in the current figure some object with an already existing name.
The catal parameter may also take two values:

YES

to check the catalog file to see if the model of an instance is in it. If the model belong to the catalog, then it is not flattened.

NO

in this case, no checks are done, and every instance is flattened.

Example

#include <genlib.h>
main()
{
	/∗ Create a figure to work on  ∗/
	GENLIB_DEF_PHFIG("mycell");
	.
	.
	.
	/∗ Place an instance ∗/
	PHINS("model","instance", "sig1", "sig2", EOL);
	/∗ flatten all figure instance ∗/
	GENLIB_FLATTEN_ALL_PHINS(YES, YES);
	/∗ Save all that on disk ∗/
	GENLIB_SAVE_PHFIG();
}

See Also

genlib(1), GENLIB_PLACE(3), GENLIB_PLACE_LEFT(3), GENLIB_PLACE_RIGHT(3), GENLIB_PLACE_TOP(3), GENLIB_PLACE_BOTTOM(3), GENLIB_PLACE_ON(3), GENLIB_FLATTEN_PHFIG(3), GENLIB_FLATTEN_ALL_LOINS(3).

Referenced By

GENLIB_FLATTEN_ALL_LOINS.3alc(3), GENLIB_SC_BOTTOM.3alc(3), GENLIB_SC_LEFT.3alc(3), GENLIB_SC_PLACE.3alc(3), GENLIB_SC_RIGHT.3alc(3), GENLIB_SC_TOP.3alc(3).

ASIM/LIP6 PROCEDURAL GENERATION LANGUAGE