AAO DRAMA C++ Interface (Old style)
DRAMA C++, Depreciated, don't use for new code

◆ DcppSpawnKickArgUpdate()

void DcppSpawnKickArgUpdate ( DitsTransIdType  transid,
const SdsId id,
StatusType *  status 
)
extern

Update an argument structure used when kick actions which spawn.

  Actions which spawn (allowing multiple actions of the same name)
must be kicked by specifing an argument structure which allows the
target task to determine which invocation of the action should
be kicked.

This can be done by either specifing the action index
(which the subsidary task can get using @htmlonly <a href="../routines/DitsGetActIndex.html">DitsGetActIndex()</a>@endhtmlonly) as an
argument named "KickByIndex" or anther task using the
transaction id (as known by the parent action of this action),
as wraped up in an argument by this call.  This routine can be
used to change the transaction id in such argument structure.

It can also be used to add such and item to an existing structure,
which it does if it does not already exist within the structure.
Note that in this case, if an item named "KickByIndex" is found,
it is deleted.  The add if is does not exist feature only works
for internal SDS items, whilst the update only feature will also
work for external SDS items.

The Dcpp versions of these functions allow the use of SdsId's to contain the SDS ID, but otherwise just invoked the Dits versions.

See also
DitsSpawnKickArgUopdate
DcppSpawnKickArg
Parameters
transidThe transaction id.
idThe SDS ID contain here is modified. If an item named KickByTransId does not exist, it will be created. The value of this item (regardless of if created) will be set to the transaction id
statusModified status.

Referenced by DcppTask::Obey(), DcppTask::Obey(), and DcppTask::ObeyForget().