Community

Do I need to call StreamingOutputsEnableSet for EVERY call to MovePT?

[RMP 8.3.1]

The topic and method doc don’t quite sound the same in my head when I read them.

Regarding StreamingOutputsEnableSet(...)

topic:

you must be sure to have the correct value for Enable for EACH call to MovePT().

method doc:

If set to false and moves are added, the outputs will not trigger

Do I need to invoke ...EnableSet(...) for EVERY call to MovePT(...)? In particular, do I want to call it with false while there are still outputs to be triggered with previous motion points sent?

What is the lifetime of effect of ...EnableSet(...)? Does it only affect the very next call to MovePT(...) and nothing else?

If I still have outputs that I want to be triggered by RMP that I’ve sent in previous calls to MovePT(...), will calling ...EnableSet(false) interfere with those actions?

I’m trying to figure out the right way to use the API function.

If there are already things in the Streaming Outputs List that I configured/sent in the past and I call ...EnableSet(false), will that interfere with them being processed and affecting the output?

Calling axis.StreamingOutputsEnableSet(false); will disable the triggering of the output.
calling false also:

FALSE - resets the current index to 0, and clears the vector backing.

If you call with the argument false you will need to call with the argument true to use it again.

Could you elaborate more on what you are specifically trying to do?

I want to occasionally stream an output with motion data.

  • I want to turn it on or off without knowing when (or if) I will set it back again.
  • I want to be able to turn it on or off (via streaming) numerous times.
  • I want to send a lot of motion data that won’t have any streamed outputs set for it.

I’m streaming motion with MovePT(...). Every once in a while, I will want to add an output to the streaming so that it gets set when a specific set of motion is executed.