Jump to content

eberaud

Members
  • Posts

    297
  • Joined

  • Last visited

  • Days Won

    10

Posts posted by eberaud

  1. Is there a way to retrieve the reference of the VI inserted in a subpanel? I'm writing a code that takes a "parent" VI ref, and then scan through all its splitters, panes, and subpanels, and now I'd like to retrieve some infos from the VIs loaded inside the subpanels...

     

    Cheers

  2. I made a second attempt at the elevator. I wrote it after watching a video from Muun doing the exam with the Model View Controller (without OOP) (https://www.reddit.com/r/LabVIEW/comments/3939jy/postlive_cla_practice_exam/). I tried to implement a simple version of the MVC by creating a central model that stores all queue and event refs across the application. I also added proper wrapping API for the messages to send, but the API still takes the queue or event references as input, so each caller still needs to pass the reference. I was doing this a third time (which I won't!), I would put the 'get model' inside each VI of the message API, so the callers of the API don't need to pass the references...

     

    I'd be happy to get some feedback before I try the ATM exam practice in a few days. Thanks!

    CLA Elevator Exam EB_try2.zip

  3. I wrote the elevator practice exam this morning. I'm not super content with my performance, and will definitely need to do better at the exam. The positive note is that it gave me a much better understanding of the format and the requirements. Even though I already knew I shouldn't code too much, I still did I think! The 4 hours just flew by so fast!

     

    Anyhow, I would greatly appreciate your feedback. I stopped after exactly 4 hours, so it is quite incomplete. I inserted a tab in front of each requirement that I placed. I placed 80 of them over the 90 the files contains.

     

    Of course it's hard to tell, but do you think I would have passed or failed?

     

    Thanks

    Emmanuel

    CLA Elevator Exam EB.zip

  4. Coincidence, I'm actually facing a related issue right now. My application is compiled in 32-bit and runs nicely on both 32-bit and 64-bit machines. However one new plugin I created calls a 3rd-party dll which has been provided by the supplier in both 32-bit and 64-bit versions. My code was calling either one or the other, based on the OS bitness. But now I understand from what I read that a 32-bit application cannot call a 64-bit dll.

     

    So my question is: do you think there is a way to use the 32-bit dll on the 64-bit machine? Right now the dll lives in a sub-folder in C:\. Should I move it to ProgramFiles(x86)? (the application always lives on ProgramFiles(x86).

     

    Sorry to hijack the thread a little bit.

  5. If you use the conditional structure with TARGET_BITNESS, the selection happens at compile time. Now you need 2 computers: one to build the 32 bit version and one to build the 64 bit version. Wouldn't it make more sense to use a case structure and detect the bitness of the PC on which the application is being executed?

     

    To do that, I use the tip given by rolfk in this thread: https://lavag.org/topic/14002-determine-32-or-64bit-os-windows/

  6. Dear all,

     

    I successfully passed my CLD just a few weeks ago at NIWeek and will attempt the CLA on September 10th. I did a lot of research, attended the session on the CLA preparation, and won't bother you with the usual basic questions, I think I have a good understanding of what is expected.

     

    However, there are two things I'd like your help with:

     

    1) Requirement tag: I never used them and I'm amazed by how little information there is online. Where do you put them:

    - BD: Free labels, wire labels

    - FB: Free labels, free labels inside a cluster

    - Documentation inside VI Properties

    - Others?

     

    2) Error Handling: I must admit I lack experience and knowledge about how to create an error handling module, let alone a good one! In my past projects, each module and sub-module was always performing its own error handling... Could you point me to a few different techniques and examples? I'd like to get a good understanding of what is expected from such a module. If I only look at the one from the sample exam, I'm afraid I will just try to memorize and recreate it and it's not what I want to do...

     

    I'll start working on the sample exams and will likely post my solution here to ask for some feedback.

     

    Thanks  :book:

    • Like 1
  7. I'm not a fan of using queues to wrap a DVR, since the whole point of DVR is to have an efficient way to read-modify-write a value in memory while guaranteeing its integrity. We make heavy use of DVR and it works like a charm now. During the development phase though, we did run in deadlocks and it's true that a timeout would have made our lives better. But I don't think the final architecture should use DVR timeouts as part of the design. They should only be here to signal an error and be treated as such.

  8. Sorta.  Mark does this out of the kindness of his heart, and his enthusiasm for the community.  Things happen and he might not be able to record a session, or the camera might break, or a presenter might ask him not to.  There are reasons Mark might not be able to record and upload the sessions and I think having him publicly state which sessions he is going to attend might be unfair to him.

     

    Makes total sense. Thank you Mark no matter what!  :worshippy:

     

    I'm also planning to pass my CLD, so I need to remove even more sessions in my list, tricky tricky tricky... 

  9. I'm in

    I will be sure to record it for those that can't make it this year.

     

    I'll be at NI Week but obviously can't attend all the sessions I'd like to attend. Do you already know which sessions you are going to record? That way I guess I can attend the ones you don't record and watch the other ones after the NI Week. Is that a wise strategy?

     

    Thanks!

×
×
  • Create New...

Important Information

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