main
rhetorica 2026-01-05 14:25:52 -08:00
parent d2ca618e11
commit 4b042273f5
2 changed files with 4 additions and 4 deletions

View File

@ -45,7 +45,7 @@
[p:<key>] [n:<key>] <type-spec> [p:<key>] [n:<key>] <type-spec>
- p:<key> is optional; it specifies a UUID to use for the pipe (otherwise this is generated randomly) - p:<key> is optional; it specifies a UUID to use for the pipe (otherwise this is generated randomly)
- n:<key> is optional; it overrides the pipe this will send to (required if you want complete control over the UUIDs of a pipeline) - n:<key> is optional; it specifies the UUID of the next pipe in the pipeline (essential for capturing output from the final pipe)
- the <type-spec> is one of: - the <type-spec> is one of:
notify <program>: triggers the program using SIGNAL_NOTIFY (volatile) notify <program>: triggers the program using SIGNAL_NOTIFY (volatile)
invoke <program>: triggers the program using SIGNAL_INVOKE (volatile) invoke <program>: triggers the program using SIGNAL_INVOKE (volatile)
@ -53,8 +53,8 @@
permanent <program>: triggers the program using SIGNAL_INVOKE (non-volatile) permanent <program>: triggers the program using SIGNAL_INVOKE (non-volatile)
to <channel> <UUID>: sends messages to <UUID> on <channel> (non-volatile) - will not send messages to subsequent pipes to <channel> <UUID>: sends messages to <UUID> on <channel> (non-volatile) - will not send messages to subsequent pipes
from <channel> <UUID> <program>: listens for messages from <UUID> on <channel> and invokes <program> (non-volatile) - will not pass on messages from prior pipes; specify <UUID> as NULL_KEY to listen to messages from any object; be aware that the user key provided by 'from' will be the object UUID rather than the owning avatar from <channel> <UUID> <program>: listens for messages from <UUID> on <channel> and invokes <program> (non-volatile) - will not pass on messages from prior pipes; specify <UUID> as NULL_KEY to listen to messages from any object; be aware that the user key provided by 'from' will be the object UUID rather than the owning avatar
transport: simply passes messages to the output pipe (non-volatile) transport: simply passes messages to the next pipe (non-volatile)
print: simply passes messages to the output pipe (volatile) print: simply passes messages to the next pipe (volatile)
<program>: if no type identifier is included, the pipe is assumed to be a volatile SIGNAL_INVOKE pipe <program>: if no type identifier is included, the pipe is assumed to be a volatile SIGNAL_INVOKE pipe
file_open() automatically creates a special pipe which is functionally identical to a volatile SIGNAL_NOTIFY pipe, but automatically removes the linebreaks at the start of the buffer caused by print() file_open() automatically creates a special pipe which is functionally identical to a volatile SIGNAL_NOTIFY pipe, but automatically removes the linebreaks at the start of the buffer caused by print()

View File

@ -68,7 +68,7 @@ string tasks_queue = "{}";
// [DEPRECATED] send a receipt for a completed task, without shutting down: // [DEPRECATED] send a receipt for a completed task, without shutting down:
#define resolve(_R) if(_R) system(SIGNAL_DONE, ares_encode(_R) + NULL_KEY + " " + PROGRAM_NAME) #define resolve(_R) if(_R) system(SIGNAL_DONE, ares_encode(_R) + NULL_KEY + " " + PROGRAM_NAME)
// send a receipt for a completed task (with callback), without shutting down - suitable for modern NV jobs: // [BACKEND] send a receipt for a completed task (with callback), without shutting down - suitable for modern NV jobs:
#define resolvec(_R, _ins) if(_R) system(SIGNAL_DONE, ares_encode(_R) + (string)(_ins) + " " + PROGRAM_NAME) #define resolvec(_R, _ins) if(_R) system(SIGNAL_DONE, ares_encode(_R) + (string)(_ins) + " " + PROGRAM_NAME)
// [QUESTIONABLE] send a receipt for a completed task, including callback, and close streams (if they are volatile invoke pipes): // [QUESTIONABLE] send a receipt for a completed task, including callback, and close streams (if they are volatile invoke pipes):