Fwd: Re: Problems with overriding vitrual constant member functions in device adapter

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Fwd: Re: Problems with overriding vitrual constant member functions in device adapter

ed@esimaging.co.uk
Sorry for the noise Arthur, I should have replied to the list...

On 25/09/2012 08:40, Arthur D. Edelstein wrote:
> Hi Ed,
>
>> Thanks for a swift resolution, by the way, what time do the nightly builds
>> build?
> I just ran them again right now, because there was a minor problem
> with the regularly scheduled build.
>
> Best regards,
> Arthur

Hi Arthur,

I've got a lot further with this issue now. I spotted that the Utilities
DAL had nothing in the Position property handler to deal with sequences.
Having fixed this I can now do the following to run a Z sequence:

import mmcorej.StrVector;
seq = new StrVector();
seq.add("0");
seq.add("100");
seq.add("200");
seq.add("300");
seq.add("400");
mmc.loadPropertySequence("DA Z Stage","Position",seq);
mmc.startPropertySequence("DA Z Stage","Position");
gui.enableLiveMode(true);
Thread.sleep(10000);
gui.enableLiveMode(false);
mmc.stopPropertySequence("DA Z Stage","Position");

However, running a Z-stack from the GUI seems to still run as per a
simple DA device, setting the position once per image. Is there
something I should be looking out for? I've checked through the flow of
the program and it seems that when using the GUI it's not behaving
correctly for the sequenceable property. Running the beanshell script
above results in all the right breakpoints being hit, using the z-stack
in MDA results in none of the sequence related breakpoints being hit.
What's extra-specially-odd is that it checks the IsStageSequenceable
value at least as many times as there are entries in the sequence before
any images are acquired, then fails to act upon it.

I'll need to commit my changes to the Utilities DAL at some point,
should I send files or could you please grant me commit access? I don't
mind either approach, but being able to commit updates to Utilities
would be handy. ( I promise not to break it too often ;-) )

Thanks again,

Ed










------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and
threat landscape has changed and how IT managers can respond. Discussions
will include endpoint security, mobile security and the latest in malware
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
micro-manager-general mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/micro-manager-general
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Fwd: Re: Problems with overriding vitrual constant member functions in device adapter

Nico Stuurman
Administrator
Hi Ed,

> I've got a lot further with this issue now. I spotted that the Utilities
> DAL had nothing in the Position property handler to deal with sequences.
> Having fixed this..

> I'll need to commit my changes to the Utilities DAL at some point,
> should I send files or could you please grant me commit access?

For now, could you please email them to me so that I can review and then commit?

Thanks!


Nico


------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and
threat landscape has changed and how IT managers can respond. Discussions
will include endpoint security, mobile security and the latest in malware
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
micro-manager-general mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/micro-manager-general
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Fwd: Re: Problems with overriding vitrual constant member functions in device adapter

ed@esimaging.co.uk
On 25/09/2012 19:41, Nico Stuurman wrote:

> Hi Ed,
>
>> I've got a lot further with this issue now. I spotted that the Utilities
>> DAL had nothing in the Position property handler to deal with sequences.
>> Having fixed this..
>> I'll need to commit my changes to the Utilities DAL at some point,
>> should I send files or could you please grant me commit access?
> For now, could you please email them to me so that I can review and then commit?
>
> Thanks!
>
>
> Nico
>
Thanks Nico, no problem. I'll email the files soon.

Do you have any idea about why this would work via scripted sequence
loading but not via the GUI? It looks like MM is not trying to use the
sequence functionality despite checking and the Utilities DAL setting
IsStageSequenceable true.

Best,
Ed


--
Ed Simmons
[hidden email]
www.estechnical.co.uk


------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and
threat landscape has changed and how IT managers can respond. Discussions
will include endpoint security, mobile security and the latest in malware
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
micro-manager-general mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/micro-manager-general
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Fwd: Re: Problems with overriding vitrual constant member functions in device adapter

Arthur D. Edelstein
In reply to this post by ed@esimaging.co.uk
Hi Ed,

>I can now do the following to run a Z sequence:
>
> [...]
> mmc.loadPropertySequence("DA Z Stage","Position",seq);
> mmc.startPropertySequence("DA Z Stage","Position");
> [...]

> However, running a Z-stack from the GUI seems to still run as per a simple
> DA device, setting the position once per image. Is there something I should
> be looking out for?

I think the reason this isn't working is that the acquisition engine
doesn't use property sequences to perform Z stacks. Instead, it uses
stage-specific sequences, including the calls
mmc.loadStageSequence(...)
mmc.startStageSequence(...)
mmc.stopStageSequence(...)

In order for these to work with a DA device, you need to use the
"Utilities/DA Z Stage" device.

Best regards,
Arthur

------------------------------------------------------------------------------
Got visibility?
Most devs has no idea what their production app looks like.
Find out how fast your code is with AppDynamics Lite.
http://ad.doubleclick.net/clk;262219671;13503038;y?
http://info.appdynamics.com/FreeJavaPerformanceDownload.html
_______________________________________________
micro-manager-general mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/micro-manager-general
Loading...