-
Posts
835 -
Joined
-
Last visited
-
Days Won
49
Content Type
Profiles
Forums
Downloads
Gallery
Posts posted by MikaelH
-
-
Here are the latest GDS builds
http://goop.endevo.net/GDS/GDS_4.7(R1U)_2010.zip
http://goop.endevo.net/GDS/GDS_4.7(R1U)_2010-64.zip
http://goop.endevo.net/GDS/GDS_4.7(R1U)_2011.zip
http://goop.endevo.net/GDS/GDS_4.7(R1U)_2011-64.zip
http://goop.endevo.net/GDS/GDS_4.7(R1U)_2012.zip
http://goop.endevo.net/GDS/GDS_4.7(R1U)_2012-64.zip
http://goop.endevo.net/GDS/GDS_4.7(R1U)_2013.zip
http://goop.endevo.net/GDS/GDS_4.7(R1U)_2013-64.zip
If these pass the testing, we'll rename them and release them as GDS 4.7
Cheers,
Mike
-
2
-
-
Hi
I can see at the Symbio home page there is a GOOP Developmente Suite v4.6 version!
What's the news? 2013 support perhaps?
regards Bjarne
You should be able to download it from symbio.com/goop (on the lower right side)
But I'm about to release GDS 4.7, this version should be downloadable in the end on this week.
I'll keep you posted.
GDS 4.6 don't have to many exciting stuff, other than 2013 compatible.
GDS 4.7 have a 2013 bug fix and also property node creation (so you can access your object data through property nodes)
Cheers,
Mike
-
Maybe a temporary file that is read when the State object is created.
If the state has not been interupted it will delete the file so when created next time, the State object attribute will be using the default values.
-
A follow-up to this issue. I've released a new version of VIPM that resolves the crashing issue reported in this thread. It can be downloaded on the VIPM Labs page.
Thanks Michael, really appreciated
-
It looks good. BTW in GOOP4 we decided to make the object attribute protected.
That means you can use your parent’s GetAttribute VI(s) in your child methods.
-
Hi Helcio
You are getting closer and closer ;-)
Everything looks good, but when you like to update the Number Of Timers that you store in the class attribute.
Make sure you do that inside the same IPE structure.
So do it something like this.And also, you don't need (and shouldn't), wire the Class Ref input to the Create method.
This input is only used by the framework when you inherit a base class.
Try to create an extended Timer and inherit it from your Timer class
-
Or could the table be replaced by a picture control :-)
It was nice to see you too.
Cheers,
Mike
-
Hello Mikael,
I am sending the timer goop.vip file attached. In this example there is a class called timer created with the GDS,
I do not know why the attribute "Number of Timers in Memory" is not being updated the way I think it should work. I would expect that when the class is created, this attribute is updated and somehow kept in memory, so that another object of the same class type can access and modify it.
In the example sent, why the attribute Number of timers in memory (in the Example 1.vi and Example 2.vi ) are always resulting in 1? I would expect this value to be the total number of timer objects created, and in this case it is certainly more than 1.
thanks
Helcio
Remember that the Object Attribute is unique to the wire coming out of Create.
If you want to know the number of Timers created totally of one class, you have to either use Class Attributes (Add that Design Pattern to the class).
Or you have to name the object and share the same object.
Do you know how Class Attribute works, or should I create an example for you?
BTW there is a bug, if you add the Debugger/Persistent Design pattern to the class (but you are not in this case), for LV 2013.
This bug is being solved and GDS 4.7 will soon be released.
Remember that the Object Attribute is unique to the wire coming out of Create.If you want to know the number of Timers created totally of one class, you have to either use Class Attributes (Add that Design Pattern to the class).
Or you have to name the object and share the same object.
Do you know how Class Attribute works, or should I create an example for you?
BTW there is a bug, if you add the Debugger/Persistent Design pattern to the class (but you are not in this case), for LV 2013.
This bug is being solved and GDS 4.7 will soon be released.
Oops, I saw another thing; you are mixing by value and by reference in this class.
You probably would like to go with By Reference in a class like this.
Be sure you don’t modify the Class Private Data with the attributes you have done, move them into the file: ObjectAttributes.ctl, and use the IPE-Structure to modify them.
-
This is an old thread, so I understand if nobody answers
I need to be able to have check boxes in multiple columns, in my case 12 columns. I tried the MCL control that PJM found and I was able to get the symbols to show in 8 columns, more than that does not work. Any ideas how to get this done?
I could always go back to the hack of old days of using the Symbol font and show the check box this way, but I want to see if there is better way.
Thanks,
Fab
..or just use the old nice Picture control, lot of fun work though :-)
-
Is there some way to force the use of class data accessors to access class data for class members? My use case is I simply don't want the use of unbundle node to be used. I like to massage the data (sometimes) before it's accessed and want to make sure developers and users of the data only access it through the accessors (VIs or Property nodes). Perhaps there's another way to enforce this? Note: This need is for members within a class, you can't do unbundle outside the class already.
This also raises another philosophical discussion on the decision between VIreadwrite vs propertyreadwrite. What are the best practices for this and what are the factors in deciding one over the other?
It sounds like your class has become to big manage. I've never had this requirement.
-
So the Method "GenerateNextX" belongs a class e.g. "Creator" class is that what you mean?
If so the Creator class has a normal Association dependency to the Class "X"
This is what Symbio's UML Modeller would show about that design.
(select an assoication and press Shift to open the Context Help)
Cheers,
Mike
-
- Popular Post
- Popular Post
Symbio will give away 3 UML Architect GOOP Development Licences.
-
3
-
Stop using references to data. In a parallel environment it is a bad idea. Sharing data between two processes is like sharing hypodermic needles between two addicts -- dangerous and likely to spread disease.
Lol, I don’t share needles, but objects from time to time.
I still use reference objects in my designs, and I do share them in parallel loops when needed, but that is objects, not the data itself.
See you in 2 weeks AQ :-)
-
I'm coming. See you guys there.
-
2
-
-
So I made a test application using roughly the same design as my real application.
And of course this works fine on both computers, I can spawn 50 Actors at the same time without any problem.
I still might put in a small delay between the Launch of every actor just in case.
-
Do you have a four-core machine? I ask because then four clones will initially be reserved of the various shared-clones at start, and then the fifth instance will require a new clone. In working with shared clone pools (through an 0x40 reference to "Open VI Ref”) I have sometimes noticed what seems to be a delay in getting that extra clone when it is asked for soon after the reference is opened. BUT, I have never seen this delay actually stop code from working.
I did see this problem on the production machine which has 2 cores, but not seen it yet on my 4 core machine (but I haven't tried to run too many DUTs).
I don't think it's an Actor related issue, I think it could be a "Reentrant,Fire & Forget(0xC0)", "Preallocated Clone" , "Queue Reference" - Problem.
If I have time I'll create a test application to see if I can cause it to fail.
It might be the production computer that has some problems.
-
Are you overriding “Pre-launch Init.vi” such that it might produce an error (thus preventing the sending of the enqueuer back to the Launch VI)?
I'm not, it's so strange, why can I run a few Actors in parallel but not too many?!?
I might do a 2012-64bit version to see if that makes the Queue Reference work better.
-
Hi
I have a very strange Actor Launch problem. I start an Actor to do some calculations for every attached DUT. And that has been working great, 1,2,3 Actors(DUTs) no problem.
But now I’m starting to get problem when I have around 5 or more Actors that I start of the same type.
The screenshot below shows my problem.
The queue used to get the Actor’s Enqueuer back after the Asynchronous start of the Actor, didn’t receive anything.
I debugged the code, and could see that the Queue-Reference was the same for the Enqueuer and the Dequeuer. Also no errors were found on the Enqueuer Error in.
Has anybody seen something similar?
The code only fails if there are too many started actors at the same time!
Cheers,
Mike
-
Guys,
I did find a bug in the Sub VI, that has been fixed now.
The "BDwin.Origin" position had to be inverted.
-
- Popular Post
- Popular Post
Is it just me that’s annoyed of the QD Insert item on wire function?
If you have a diagram like this below, and you like to add a +1 here:
The result becomes like this:
Enough is enough, I can't live without this feature but I tweaked it so it actually works.
Or at least it seem to work, please feel free to test it.
Place the attached VI in the Plugin folder:
..resourcedialogQuickDropplugins
Update the Insert.vi plugin and add this Sub VI here:
(I've updated this sub VI)
Did it work for you?
Cheers,
Mike
-
3
-
If anybody have time to update it and make it better and more fun/addictive to use, please feel free to share.
I thought about adding it in the Project Secondary provider start-up VI, so the users have to get X of Y correct QD placements within z seconds, before it lets then continue using LabVIEW.
Maybe depending on their score, they'll need to do it more often
So suddenly when they do a LabVIEW2012-folder update, they get this function installed automatically.
-
Yes, I do have a repository for every LV version :-)
Also every time I release/build an exectutable, I tag both the Project Folder (e.g. MyTestSystem-PN:123546-Rev:C12-2012-05-03) and also my LabVIEW repository (LabVIEW2012-2012-05-03-MyTestSystem-PN:123546-Rev:C12), that way I can alwasy get back to the environment I had when I did the build.
In case you don't have an internet connection, I would go with a VIPM package.
For the LabVIEW.ini file, we only update shortcuts to use a company defined shourcut list, but the VI we run to update the LabVIEW.ini file also updates all your prefered settings.
So the user selects his name in a drop down list and then it will configure all his LabVEIW.ini files to his taste.
Yes I did mean all, this is how my LV folder looks like.
-
I use SVN :-)
It's so easy.
We have a shared LabVIEW 2012 repository, that all the companies LV computer check out into their LV 2012 folder.
TortortoiseSVN will of course complain that there are files in the folder, but that's fine.
In this repository I've not added all files under the LabVIEW folder, but most stuff under user.lib (where we have the companies common VIs, and of course OpenG) and instr.lib (where we all the shared instrument drivers, more than 100 lvclasses)
But I've also checked in all RCF files needed, the QD plugins and of course GOOP Development Suite.
To update the LabVIEW.ini file with QD shortcuts, we have a VI in the repository that updates the shortcut so everyone gets the same.
I found this way easier than vipm, to make sure all development system uses the right sets of VIs.
I suggest you try this, it's so easy, and has been working really good.
//Mike
-
You have too much time(or quick tools) Mikael...
My job is to make sure my team works faster and more efficient, and also have more fun, I just need to add some high scores as well then we can have a competition :-)
-
1
-
Sub Panel: Insert VI has changed in LV 20213
in Development Environment (IDE)
Posted
I’m sure it’s not just me that missed out the change in LV 2013, when it comes to Sub Panel’s Insert VI method.
From 2013, you can't insert ctl-file any more.
For me that is a show stopper right now. So I can’t upgrade to 2013.
Can anybody at NI let us know, why this support was dropped, and what the work around would be for my exe file that currently opens CTL files and shows then in a sub panel?