1 pointI did a quick search of the website but I didn’t see something like this posted so I’d thought I’d post it. It’s probably been done before but I found that it pretty helpful in my current project. I usually use DVRs whenever I want to use the aggregation pattern (zero or more relationship). Many times though I want to sort or return an object from the array based on an attribute in the object (like name). Since I am using a DVR I found I can quickly make a hash table using variant attributes. I just use the “Name” or other unique value and make the DVR the value. I can then lookup a DVR by name through the variant. It stays really fast because the DVR is just a reference to the data and I am not looping through DVR references and comparing the name or unique value to the value in the object. Example use: I can lookup these commands by name or opcode using the variant hash table. I create the lookup based on name. I also create the lookup based on opcode I can then lookup the object very quickly based on name or opcode.
1 pointThank you for taking the time to mentor an FRC team. I'm starting my third year mentoring an FRC team and we have successfully used both LabVIEW and Java. If you want to find list of LV vs. Java vs. C++ vs. Python, etc... look on cheifdelphi. FRC build season is very chaotic. You have six weeks to prototype, design, build and test your robot. This means that the time you software team has with the completed robot will be very short. Your students that are programming need to be very comfortable with the tools and hardware that they are interfacing with. Students generally have more experience with text based languages than with LabVIEW. Most high schools teach C++ and Java. High School AP computer programming uses Java. When you are in a stressful situation (build season), it is not a good time to be learning new concepts. Data flow is a very different animal than sequential programming or OOP. Does this mean that I think that you should use Java and not LabVIEW? No! But, you do need to understand why they may not immediately see the beauty of LabVIEW. To have your students program effectively with LabVIEW you need to work with them in the off season. There are many good resources for teaching LabVIEW to FRC students. A good place to start is www.ni.com/frc. (Oh, I see you've cross-posted this question there.) I disagree with the idea of dual development (Java and LabVIEW). Like I mentioned earlier, your test time on the competition robot will be very short. Testing two different programs will be difficult and it will take away practice time from your drivers.
1 pointMy understanding is that according to the wire flow LV cannot (to 100%) guarantee that the object type on the wire is EXACTLY the same (not a child, not a parent) as the input but you're basically telling the compiler "Chill bro, I've got it under control". If for any reason (sn error for example) the object you are changing the run-time type on IS different, you'll get a run-time error. The compiler should be telling you "Pfft, under control you say....". I may have paraphrased some typical compiler jargon.... Shane.