Presets Functions Presets - Generally speaking, presets store and recall parameter values and triggers in Reactor - The values to be stored can be predefined in a preset profile or they can be completely arbitrary (recording what changes) - A preset profile can define values across device cores, device IDs and parameter dimensions - or they can be narrowed down - With narrow preset profiles, there are inherent opportunities to use presets to copy/paste sets of values between devices and dimensions - Reactor supports an infinite amount of preset profiles (re-)defined anywhere in the layer tree - Storage and recall of a preset can work either instantaneously or played back over time - When recorded and played back over time, values are organized in multiple segments. Each segment is essentially a time line and at the end of a timeline, playback will continue to the next segment either automatically or by user invocation (waiting for user input). - Playback order of segments can be shuffled and waiting time between segments can be randomized. Playback for a timeline can be looped - Recording and playback allows cancellation which will restore the state before recording or playback. - Support for ganged recording and playback of multiple preset numbers, device ids, and dimensions (fairly exotic, honestly) - Prepared for parameter animation (must be implemented in devicecollection) Commands: NextSegment (trigger) During recording, this will end the segment and start a new one assuming there has been values added. During playback, this will skip to next segment AddUserWait (trigger) Like NextSegment, but when used during recording it will insert a User Wait at the end and cap the segment length to the last added value. Play (trigger) Starts playback PlayToggle (trigger) Starts or stops playback PlayToggleNext (trigger) Starts or stops playback, except if waiting in which case it will PlaySkip (trigger) Starts playback, and skips to next segment if already playing (which may result in stopping altogether) PlayPause Starts playback and toggles pause if already playing PlayPauseNext Starts playback and toggles pause if already playing, unless at a user wait in which case it skips to next. Record (trigger) Starts recording RecordToggle (trigger) Starts or stops recording RecordNewSegment (trigger) Starts recording, and creates new segment on second press RecordAddUserWait (trigger) Starts recording, and creates new segment with user wait on second press Stop (trigger) Stops recording or playing Delete (trigger) Deletes preset if it is not recording or playing Cancel (trigger) If recording, it will stop recording, recall the values from before recording and reinstate the previous content for the preset If playing, it will stop playing and recall the values from before playing. Recall (trigger) Instantly recalls the final values of the first segment of a preset. RecallStateFromBeforeRecording (trigger) Recalls the initially stored state of a given preset DurationRandomExtension (Integer value, ms) Sets the Random extension value for a given recorded preset. Loop (bool) Enable looping for a preset Shuffle (bool) Enable shuffle for a preset