Used and free pool numbers
gma3_pool_usageCheck which numbers a grandMA3 show already uses per pool before storing objects. Returns stored counts, used number ranges, names, and the first free block of a given size.
Instructions
Read-only: which numbers a show already uses, per pool, before you store into it. For each pool: stored (the number of stored objects), used (their numbers as ranges, "1-11, 5001-5534"), with names: true [no, name] pairs, and with free: {size, from?} the first free block of that size ("21-40"; null when there is none up to 9999 or the read is incomplete). Pools: DataPool pools by name ("Groups", "Sequences", "Macros", "MAtricks", "Timecodes", "Layouts", ...); a preset pool as "Preset 4" or in preset_pools (stored presets, not the pool's 1000 slots); "PresetPools" (every preset pool as [no, name, stored, used]); "Page 2" (its executors with an assigned object as [no, class, name]; covered: the numbers a wider executor (Width > 1) spans, never free; an assignment that cannot be read (an invalid handle, or a read that raised: bridge 0.47.0) is listed as unreadable and makes the page incomplete; free searches one row: 101-198, 201-298, 301-390, 401-490, from 101 by default); "Pages" (every page as [no, name, executors used, used]). Every pool is read to its end page by page; complete: false with reason (keeping what was read) when a read fails, the console cannot list the children, the pool changes during the read or an object has no number (an executor without a readable No); free blocks are offered only from complete reads and need bridge 0.47.0 (with an older bridge unconfirmed says why and free is null); the call is an error only when no pool could be read at all. Ranges such as "Page 1.101 Thru 1.115" are not accepted (executor ranges can hang onPC). Use this instead of gma3_objects "Macro Thru" or a Lua walk of the pools.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| free | No | Find the first free block of size numbers in each pool. | |
| names | No | Also list [no, name] per stored object (default false). | |
| pools | No | Pools to read: "Groups", "Sequences", "Macros", "MAtricks", "Timecodes", "Layouts" (any DataPool pool name), "Preset 4", "PresetPools", "Page 2", "Pages". | |
| data_pool | No | Data pool number (DataPool n). Default: the current data pool, as without this parameter. | |
| preset_pools | No | Preset pool numbers, e.g. [1, 4, 21] (the same as "Preset 1", ... in pools). |