Jump to content

Conner P.

  • Content Count

  • Joined

  • Last visited

Community Reputation


About Conner P.

  • Rank

LabVIEW Information

  • Version
    LabVIEW 2017
  • Since

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. The target system is for optical coherence tomography. We are pulling 2048 wide U16 arrays from a linescan camera spectrometer from a framegrabber using IMAQ. The line rate is 80khz. The data is naturally blocked into "b-scans" which are ~1024 pixels wide, but we want to increase this in the future. The IMAQ buffers reflect this. So we get a 1024x2048 U16 image every 13ms or 75 images per second. The images are then converted to doubles for processing due to the limits of the LV Analysis library. This means 1024x2048x8bytes = 16MB per 13ms or 1.2GB/s. The processing includes linearization
  2. I use TortoiseGit for most operations, but do frequently reach for the command line, especially when trying to hunt down specific commits. I agree with the others who say it is a pain in the ass but it is better than the alternative of not having source control. I tried SVN for a while since it is NI recomended but having already been exposed to git from line coding I just felt more comfortable with git.
  3. Hi James (and Messenger Library fans), on page 2 of this thread you made a post showing a reconfigurable analysis pipeline. Would you mind explaining how you handled data transfer between the different analysis actors? I plan to start playing with this today, but would not mind some hints from the master. I am interested in doing something similar for really high data rates and the data transfer has been a sticking point for me. I do think that standard queues in the actor data would be the way do go, but the specific protocol for linking up the queues has me in a quandry. My idea is
  4. Bob, I just saw your document. WOW! Thank you for contributing that to the community. I'm looking foreward to reading it!
  5. Hi all, I have a question mostly directed at James, but others can feel free to chime in. How do you represent your actors in UML diagrams? What I have in mind is that receivable messages correspond to public methods, frames in the state machine refer to private methods, and State/Event updates to the listener registry are private and notated with <<notify>> . What do y'all do?
  6. I PM'd James the following question regarding unit testing and the Messenger Library actors. He asked I repost it here so that he can answer publicly for the benefit of the community and it is documented with the rest of Messenger Library discussion.
  7. Ah yea, I hadn't considered using an object. But since I was planning on passing a cluster, what difference does it make if it is an object or a plain cluster? Not much in the message passing regard. But, packing the data in an object does open the door to created class methods to manipulate the data, which in turn could use the command-pattern for the ThreadPool. With that, it wouldn't be so much passing in a set of parameters and returning a separate result, but more passing the object through the ThreadPool and "pushing a button on it"-- very assembly line like in my mind. I think I
  8. Hi James, how would you recommend making a message class for a specific data type? As a little preview I am trying to make a thread pool class which includes a manager actor and worker actor clones. Normally I would find the variant solution satisfactory, but as we discussed in my post on the NI forum, I have a high throughput application and don't want to give up speed I don't have to. My initial thought was to just make a subclass of MSG.lvclass like variantMSG.lvclass (sorry if the names aren't 100%, don't have LV with me atm), but then I discovered that the internal send and extract var
  9. Holy crap you weren't kidding! That is one deep rabbit hole. I'm amazed at the internal complexity of this library. I guess you really did earn that Dr. title! Very clever solution with the asnyc call to spin-up the reference checker. Is there any reason for choosing a queue vs some other type of reference?
  10. Hi James, I was looking through the VIs and tried searching for an answer, but I can't seem to get my head around how nested actors get triggered to shutdown when their calling actor shuts down. I saw somewhere mention of a queue references whose sole purpose was to indicate to the nested actor if the calling actor is alive, but I cannot figure out how that is implemented in the code. I understand such info is not necessary for usage of the library, but I am curious. Could you please highlight the implementation of this feature?
  • Create New...

Important Information

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