none
Location/Function of the basic activities RRS feed

  • Question

  • I would like to see how the basic activities work internally, mostly the IF and Switch activities, so i can see how to create a service that has multiple in- and/or outputs. However i cannot find anywhere how these activities are made.

    I have looked through all the folders that the installation of the Robotics framework gives me but i cannot seem to be able to find these activities anywhere. When i try to look how the services work internally by making a new VPL diagram with just a switch in it and some stuff attached to it, it compiles to a if statement in the service.

    Wednesday, October 23, 2013 11:08 AM

Answers

  • You can think of everything under "Basic Activities" as primitives in VPL. They are not services. They are part of the dataflow language itself and compile to code in services in which they're used. As you discovered for example, a Switch becomes simply "if" expressions in C#.

    Their behavior is described here: http://msdn.microsoft.com/en-us/library/bb466256.aspx

    However, the source for them is not included with RDS. If you're used to working with open source, I apologize. You can learn what they do from the docs or by experiment (Compile as a Service and look at the source) as you've done.

    More philosophically, I appreciate your wanting to delve a layer below where you're working. Of course it doesn't end there :) You could well ask how "if" in C# is implemented. Again, the behavior is documented but the compiler source is unavailable. And again you can explore by experiment (with ILDASM) and discover that it compiles to compare and branch instructions in the IL.

    Have fun!

    Monday, October 28, 2013 5:56 PM
    Moderator

All replies

  • I would recommend following tutorials on the web, or picking up a book "Professional RDS". RDS has a steep learning curve, and expect to invest a considerable amount of time learning the basics.

    Monday, October 28, 2013 9:37 AM
    Moderator
  • Using tutorials does not answer my question here, plus the fact that i am way further in my process and understanding of DSS, VPL and RDS then these simple tutorials (which i have done) can help me with. I need more specific/detailed information and knowledge, such as the inner workings of a join, if and switch block.

    I understand the basics, i want to go way and way more advanced, with this being one of the things i would like to know.

    Monday, October 28, 2013 1:55 PM
  • You can think of everything under "Basic Activities" as primitives in VPL. They are not services. They are part of the dataflow language itself and compile to code in services in which they're used. As you discovered for example, a Switch becomes simply "if" expressions in C#.

    Their behavior is described here: http://msdn.microsoft.com/en-us/library/bb466256.aspx

    However, the source for them is not included with RDS. If you're used to working with open source, I apologize. You can learn what they do from the docs or by experiment (Compile as a Service and look at the source) as you've done.

    More philosophically, I appreciate your wanting to delve a layer below where you're working. Of course it doesn't end there :) You could well ask how "if" in C# is implemented. Again, the behavior is documented but the compiler source is unavailable. And again you can explore by experiment (with ILDASM) and discover that it compiles to compare and branch instructions in the IL.

    Have fun!

    Monday, October 28, 2013 5:56 PM
    Moderator