Support

If you have a problem or need to report a bug please email : support@dsprobotics.com

There are 3 sections to this support area:

DOWNLOADS: access to product manuals, support files and drivers

HELP & INFORMATION: tutorials and example files for learning or finding pre-made modules for your projects

USER FORUMS: meet with other users and exchange ideas, you can also get help and assistance here

NEW REGISTRATIONS - please contact us if you wish to register on the forum

Users are reminded of the forum rules they sign up to which prohibits any activity that violates any laws including posting material covered by copyright

deleted by uploader

For general discussion related FlowStone

deleted by uploader

Postby tiffy » Sat Dec 07, 2013 8:33 pm

deleted
Last edited by tiffy on Mon Aug 24, 2015 8:17 pm, edited 1 time in total.
User avatar
tiffy
 
Posts: 400
Joined: Wed May 08, 2013 12:14 pm

Re: Link Order vs. Timing Order

Postby KG_is_back » Sat Dec 07, 2013 11:39 pm

in the schematic you've provided the situation is little different. Every time a trigger (from, whichever link) comes to the "combined output" string primitive, it sends backward trigger to all its input links which updates their values. In your case they reach multiplexer - which is either on and passes the trigger through as if it was just another "string" module or it is off in which case it is ignored as if empty string was connected.

So what actually happens is when first trigger is send from the timer to multiplexer 2 backward trigger is send to those 2 string inputs and the output of the multiplexer gets constructed from the inputs by their order (in this case 'John'+',') and the trigger is passed to the "combined output" as it arrives backward triggers are send from all input links all of them hitting turned off multiplexers which output empty strings. Again the value gets reconstructed by summing the inputs in the order they are connected ( in this case ''+'John,'+'').

When second trigger is send off the same happens at the multiplexer 1. (backward triggers are send and value gets reconstructed by summing the inputs in their order 'Steven'+')' ). then the trigger is send to "combined output" string. Old value is deleted and backward triggers are send. This time they found one multiplexer off (outputting empty string) and one turned on which also send backward triggers and reconstructs its output as 'John'+','. Then the value of "combined output" is recreated from the inputs by summing them in their order ( in this case ''+'John,'+'Steven)' )

So every trigger you send in preforms a separate process. If more triggers are send in, they simply be processed separately one after another.
note: trigger delay works in a way that input trigger gets finished and new output trigger (= new process) is created n-milliseconds later, so though this schematic is started by one trigger, actually 4 triggers are performed (one stated by user clicking the start button, and 3 that are created by timers in event delay modules).

So although the green trees of modules and links seem like a net that is "flowing" and interacting it is actually like a formula written into a calculator and every trigger is simply hitting [=]. If you send new triggers before the previous is finished it doesn't interact with the running process - it creates a processing queue.
KG_is_back
 
Posts: 1196
Joined: Tue Oct 22, 2013 5:43 pm
Location: Slovakia

Re: Link Order vs. Timing Order

Postby tester » Sun Dec 08, 2013 1:53 am

To make it short. From what I remember (Trog's stories on SM), and from what I could observe - triggers seem to have "hidden marks" on them, and they work in hierarchical way. When you use timer - you just generate trigger with "new marker" on it, thus - this one is no longer connected with the tree of "things to do". Timers (and some other actions, that generate "new" triggers) break the tree so to speak, and thus - sometimes triggers from order and sometimes from timers are faster (I saw this in action on my schematics too). If there are complex data retrievals - trigger order can produce pretty big delays across the schematic, even few seconds long.
Need to take a break? I have something right for you.
Feel free to donate. Thank you for your contribution.
tester
 
Posts: 1786
Joined: Wed Jan 18, 2012 10:52 pm
Location: Poland, internet


Return to General

Who is online

Users browsing this forum: No registered users and 59 guests