Jump to content

ShaunR

Members
  • Posts

    4,846
  • Joined

  • Days Won

    291

ShaunR last won the day on April 4

ShaunR had the most liked content!

Profile Information

  • Gender
    Male

LabVIEW Information

  • Version
    LabVIEW 2009
  • Since
    1994

Recent Profile Visitors

33,844 profile views

ShaunR's Achievements

  1. Post the VI's rather than snippets (snippets don't work on Lavag.org) along with example data. It's also helpful if you have standard benchmarks that we can plug our implementation into (sequence structure with frames and getmillisecs) so we can compare and contrast. e.g
  2. This is why it takes me hours to make an ECL build that works and is one of the many reasons only Windows is now supported (can load from same dir). Even then. I have to fight VIPM to get things in the right places. I refuse to do #2.
  3. Well. There's a few problems but the reason it's not showing the next image is because you increment the counter during acquisition until it's 300 and when you start the next acquisition it indexes into the path array at 300 (which yields Not A Path). You've confused your 30 second timer with the file index. Make a proper timer with a time function and increment the index on stop.
  4. Yes but you'd need to define "reliably". I think there would be few milliseconds of jitter and probably a minimum of about 4ms.
  5. There are surprising few situations where a parallel for loop (pLoop) is the solution. There are so many caveats and foot-shooting opportunities even if you ignore the caveats imposed by the IDE dialogue. For example. For the pLoop to operate as you would imagine, Vi's that are called must be reentrant (and preferably preallocated clones). If a called VI is not reentrant then the loop will wait until it finishes before calling it in another parallel loop (that's just how dataflow works). If a called VI is set to reentrant shared clones then you get the same problems as with any shared clone that has memory but multiplied by the number of loop iterations. Another that you often come across with shared, connectionless resources (say, raw sockets) is that you cannot guarantee the order that the underlying resource is accessed in. If it is, say, a byte stream then you would have to add extra information in order to reconstruct the stream which may or may not be possible. I have actual experience of this and it is why the ECL Ping functionality cannot be called in a pLoop.
  6. I'm a simple programmer. Catch them all where possible (try { /* */ } catch (...)) and pass errors back as a return value. That's my tuppence.
  7. It's the example from MDI Toolkit for LabVIEW
  8. If you put a Call By Reference Node in the case you've reinvented Dynamic Dispatch with extra steps.
  9. Booh with bells on. Hello 7 hr build time.
  10. Agreed. Even just 100 and UI updates become a bit flakey.
  11. They have fixed a bug, is my guess. Concatenating by using null char is a huge security smell. Multiple file types are [supposed to be] defined by using the semicolon separator. Does "*csv;*txt" not work?
  12. It's probably DICOM which is partially supported in the Biomedical Toolkit.
  13. The variant attribute cannot have duplicates. If you set it, it overwrites the previous values. With the "array with tag" you can have duplicates.
  14. Try print(json.dumps(convert['test'], ensure_ascii=False))
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.