Jump to content

ShaunR

Members
  • Posts

    4,881
  • Joined

  • Days Won

    296

Everything posted by ShaunR

  1. You know as well as I do that marketing speak isn't supposed to be intelligible. It's purpose is to say absolutely nothing in a veneer of condescension.
  2. Ah. sorry. Looks like they renamed it. LabVIEW <version>\examples\Object-Oriented Programming\Reference Object
  3. I think this reveals the answer... NI were concentrating on their systems' solutions like Systemlink, NI System Configuration and that other obese LabVIEW thing I never used.
  4. That is a typical symptom of a race condition. I would suggest taking a look at "LabVIEW <version>\examples\lvoop\SingletonPattern". It is much simpler and easier to understand than GOOP examples which have a lot of infrastructure included.
  5. We will see. I've crystalised one interpretation so it up the the OP to refine the question and provide an example of what he has.
  6. I disagree. A FGV is a number of methods around some sort of global variable. An AE is usually (but not exclusively) an extension of that around some sort of global resource which may or may not be a global variable. A LVPOOP class is a number methods around a local variable (the class cluster). Therefore I think the question in this context is "how do I make a class with a number of methods around a global variable/resource"? (A.K.A Singleton Pattern)
  7. That's not good at all. With some fiddling you might get 4-5Gb/s but that's what you expect from a low-end laptop. Are you sure it's Gb/s and not GB/s? You are hoping for at least 20Gb/s+.
  8. Running both client and server on localhost, the CPU usage is about 30% across all cores with one of the cores maxing at about 70%. I would suggest you try the same and see if you still get 100%. Doing this will isolate the network layers from the software. I suspect you will find that your 2GB limit is also present on localhost.
  9. I'll let you fight your argument in court. Until then, I'll just offer anyone who wants the code a zip file of my build.
  10. You are also required to supply the source and compile environments of the vanilla LGPL code even when just dynamic linking and that can be quite big in size. While one may argue it's merely a maintenance overhead, never-the-less, it is an overhead keeping track of (and version control of) other peoples source AND the specific compilation environment one used.
  11. Any strong copy left licence. It's not so much about that. For most open source licences it is primarily about someone taking your software, claiming it as their own, then sticking a new licence on it. You can get into a situation where someone that copies it, claims they wrote it and then comes after you for copyright infringement when you wrote the stuff. I had something like this on the NI forum where someone removed all the copyrights and proffered the toolkit as theirs. NI wouldn't remove it until I pointed out that it violated the licence which stated that all copyright had to remain intact and showed them the original toolkit (which had the licence text). Secondary to that, it enables good faith actors to know exactly how to distribute the software and comply with your wishes.
  12. Not at all. With zero debug information you identified 2 problems when most people couldn't have found the first. When it all goes to hell again, you can smile and say "come back and moan when you resolve that spurious system you refused to do anything about - and bring biscuits"
  13. Yes. The naming is the important part so you can even use it on menus by using appropriate tags to remove or disable items.
  14. Oh. IC. You said UAC and "elevation" I assumed it was Windows. I don't use terms like "Super User". They are things like Manager, Operator, Technician etc which makes more sense in a production environment. At the core, I use a database. Sometimes users are linked to the logon credentials of Windows so they log in and out of windows to get certain access rights. Control/indicator labels have a group in the name (e.g. label_1_TECHNICIAN, Label_2_MANAGER) and are hidden/shown on change events or when loaded. However. Controls/Indicators that are not dependent on login credentials (the default-usually OPERATOR) don't have a suffix (e.g. Label_3) meaning you only have to define the exceptions, rather than everything. It's the same for dynamically loaded modules (e.g. different configuration sub-panels loaded for different access rights). The VI has the group in the name (e.g. Config_TECHNICIAN). As you can imagine. I use captions for presentation, not labels.
  15. Checking very easy (IsUserAnAdmin). For exe's then there is the Manifest which is fairly automagic.
  16. LV 2011 uses .NET 3.5. Do you have that installed?
  17. A bugger to debug though And Mac with the Intel compiler, I believe.
  18. I'm guessing that your "array of floats" is an Array of Doubles but the floats are singles. Give this a try. Untitled 1.vi EDIT: Ah. You already fixed it while I was posting
  19. The checker is telling you that the functions listed (which you haven't shown) are not available on the platform. You have to resolve the bad imports (compile the DLL with equivalents or stubs) which is unlikely if you have used an automated process or wizard to create it instead of creating it yourself. If you cannot resolve the "bad imports" then you can't use the DLL on those platforms.
  20. But not by the same amount. That is indicative of multiple memory leaks. You must use the Diagram Disable structure to disable parts of the code until there is no memory leak and re-enable a couple of functions at a time to see when a leak returns. Then you can try and figure out why it is leaking. Until you know where it's occurring you are just flailing wildly and we can't really help you.
  21. You can use the Flush Event Queue if you want it to stop immediately instead of waiting for it to consume all events. If you are not consuming fast enough then eventually you will run out of memory so this VI can also be used to keep a maximum number of events (or over a time) and drop some if that occurs. That would ensure you never run out of memory and you will notice that you get discontinuities in the video (frames dropped) when it is happening.You can even have a boolean on screen to tell you that frames are being dropped.
  22. I suppose the nearest equivalent would be "Cruel to be kind"? We all know where it's at. But. Look at it this way. You and dadreamer help him get a callback working. He then get's to the decoding.. This thread already shows, not only how but the path of, implementing callbacks. That's where we are now and is useful to the community (certainly for me, at least). Going forwards maybe, just maybe, someone already has a decoder or suggests using ffmpg or some other way forwards. Maybe someone, thinks it would be useful to help over the next hurdle to get a decoder. Maybe alvise goes ahead and creates one. don't tell me that you wouldn't like that, eh? I see no downsides here. I see potential and a willingness to succeed-exasperating as that may seem at this point.
  23. Nope. The main problem is you are "learning" by doing something that 98% of the LabVIEW community couldn't do. I'm nowhere near as capable as Rolf or dadreamer on this stuff and if a client had asked me to do it I would have "declined to quote".
×
×
  • Create New...

Important Information

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