Jump to content

GROUP

From EDM2
Revision as of 21:11, 25 November 2025 by Martini (talk | contribs) (Created page with "{{DISPLAYTITLE:GROUP}} The GROUP command allows an application to control multiple devices as a unit, or group. Once the group is established, the application can control all the devices in the group with a single command. If **CLOSE** is issued directly to an instance in the group, the instance is deleted from the group. All other commands addressed to the group must include the **NOTIFY** flag. ==Syntax== <PRE> GROUP --- groupname --+-- MAKE -- (i1 i2 i3) --+-- NOPIE...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

The GROUP command allows an application to control multiple devices as a unit, or group. Once the group is established, the application can control all the devices in the group with a single command. If **CLOSE** is issued directly to an instance in the group, the instance is deleted from the group.

All other commands addressed to the group must include the **NOTIFY** flag.

Syntax

GROUP --- groupname --+-- MAKE -- (i1 i2 i3) --+-- NOPIECEMEAL --+--+--+----------+--
                     |                         +-----------------+  |  |  WAIT    |
                     +-- DELETE ------------------------------------+  +----------+
                                                                     |  NOTIFY  |
                                                                     +----------+

Keywords

groupname
Refers to a group using a name instead of a group ID. A value for this variable must be specified with the **MAKE** keyword.
Note: In use, the variable *groupname* is the same as an alias. Although the **ALIAS** keyword is not used, all rules related to **ALIAS** apply to the group name.
MAKE
Specifies creation of a group by tying several instances together. Once "grouped," the instances can be controlled by the application with one command.
The **MAKE** keyword requires values for the variables *groupname* and *(i1 i2 i3)*.
(i1 i2 i3)
Refers to the device instances that make up the group. Device instances can be identified using aliases, device types, or filenames—the same identifiers used when the devices were opened. A value for this variable must be specified with the **MAKE** keyword.
NOPIECEMEAL
Specifies that the group is to be processed as a whole rather than as separate parts. If one instance becomes inactive, all instances become inactive. This keyword is used only with **MAKE**.
DELETE
Terminates an existing group by disassociating instances that formed the group. No other keywords, except **WAIT** or **NOTIFY**, can be used with **DELETE**.
WAIT
The command is executed synchronously. The function waits until the requested action is complete before returning to the application.
NOTIFY
The command is executed asynchronously, allowing control to be returned immediately to the application. When the requested action is complete, an MM_MCINOTIFY message is sent to the application window procedure.

Remarks

The GROUP command allows an application to control multiple devices as a unit, or group. Once the group is established, the application can control all the devices in the group with a single command. If **CLOSE** is issued directly to an instance in the group, the instance is deleted from the group.

All other commands addressed to the group must include the **NOTIFY** flag.

Example Code

group mygroup make (cd wave1) wait