Print

Print


Hi, Kyle.

This doesn't look like a problem with the monitoring app itself.  The traceback is from the Driver org.hps.monitoring.ecal.plots.EcalHitPlots which presumably is looking for a collection that is no longer there.  The Driver needs to check that the collection looks correct before using it.  (Maybe discuss with Andrea about fixing this?)

BTW, are you able to run this file okay with the EvioToLcio tool and a dummy steering file?

--Jeremy

-----Original Message-----
From: Kyle McCarty [mailto:[log in to unmask]] 
Sent: Tuesday, December 09, 2014 1:31 PM
To: McCormick, Jeremy I.
Subject: Re: talk + SVN account

Hello Jeremy,


Sho and Omar fixed the readout issue so I am able to generate triggered LCIO files again. I loaded the generated file into the monitoring application and set it to run with the EcalMonitoringFinal,lcsim steering file. It correctly loads the GUI and seems to be working, except that whenever an new event is parsed, it produces the following error and does not display anything:



	java.lang.ClassCastException: org.lcsim.lcio.SIOGenericObject cannot be cast to org.hps.readout.ecal.TriggerData
	    at org.hps.readout.ecal.SSPData.getOrTrig(SSPData.java:146)
	    at org.hps.monitoring.ecal.plots.EcalHitPlots.process(EcalHitPlots.java:201)
	    at org.lcsim.util.Driver.doProcess(Driver.java:273)
	    at org.lcsim.util.Driver.processChildren(Driver.java:284)
	    at org.lcsim.util.Driver.process(Driver.java:198)
	    at org.lcsim.util.DriverAdapter.recordSupplied(DriverAdapter.java:74)
	    at org.hps.record.composite.LcioEventAdapter.recordSupplied(LcioEventAdapter.java:95)
	    at org.freehep.record.loop.DefaultRecordLoop.consumeRecord(DefaultRecordLoop.java:832)
	    at org.freehep.record.loop.DefaultRecordLoop.loop(DefaultRecordLoop.java:668)
	    at org.freehep.record.loop.DefaultRecordLoop.execute(DefaultRecordLoop.java:566)
	    at org.hps.monitoring.gui.MonitoringApplication.nextEvent(MonitoringApplication.java:1238)
	    at org.hps.monitoring.gui.MonitoringApplication.actionPerformed(MonitoringApplication.java:279)
	    at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
	    at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2346)
	    at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
	    at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
	    at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
	    at java.awt.Component.processMouseEvent(Component.java:6527)
	    at javax.swing.JComponent.processMouseEvent(JComponent.java:3321)
	    at java.awt.Component.processEvent(Component.java:6292)
	    at java.awt.Container.processEvent(Container.java:2234)
	    at java.awt.Component.dispatchEventImpl(Component.java:4883)
	    at java.awt.Container.dispatchEventImpl(Container.java:2292)
	    at java.awt.Component.dispatchEvent(Component.java:4705)
	    at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4898)
	    at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4533)
	    at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4462)
	    at java.awt.Container.dispatchEventImpl(Container.java:2278)
	    at java.awt.Window.dispatchEventImpl(Window.java:2739)
	    at java.awt.Component.dispatchEvent(Component.java:4705)
	    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:746)
	    at java.awt.EventQueue.access$400(EventQueue.java:97)
	    at java.awt.EventQueue$3.run(EventQueue.java:697)
	    at java.awt.EventQueue$3.run(EventQueue.java:691)
	    at java.security.AccessController.doPrivileged(Native Method)
	    at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:75)
	    at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:86)
	    at java.awt.EventQueue$4.run(EventQueue.java:719)
	    at java.awt.EventQueue$4.run(EventQueue.java:717)
	    at java.security.AccessController.doPrivileged(Native Method)
	    at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:75)
	    at java.awt.EventQueue.dispatchEvent(EventQueue.java:716)
	    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
	    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
	    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
	    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
	    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
	    at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
	


I assume that this is related to the monitoring application not displaying any events, but I am not sure. Do you know why this is happening?

Thanks,

Kyle


On Mon, Dec 8, 2014 at 8:06 PM, McCormick, Jeremy I. <[log in to unmask]> wrote:


	I think Omar made some changes in the LCIO to EVIO which broke the SVT part.  You might want to correspond with him about it, and please CC hps-software list.  I don't think he thought anyone was trying to use it right now...
	
	-----Original Message-----
	From: Kyle McCarty [mailto:[log in to unmask]]
	
	Sent: Monday, December 08, 2014 3:28 PM
	To: McCormick, Jeremy I.
	Subject: Re: talk + SVN account
	
	I sent you some information over the GChat client.
	
	
	On Mon, Dec 8, 2014 at 6:22 PM, McCormick, Jeremy I. <[log in to unmask]> wrote:
	
	
	        Hi, again.
	
	        You might find the example code I added here to be useful
	
	        https://confluence.slac.stanford.edu/display/hpsg/ECAL+Channel+Mapping+Conditions
	
	        under " Accessing ECAL Channel Conditions in Java".
	
	        It shows from Java how to access ECAL channel conditions, perform various types of searches, etc.
	
	        --Jeremy
	
	        -----Original Message-----
	        From: Kyle McCarty [mailto:[log in to unmask]]
	        Sent: Monday, December 08, 2014 3:11 PM
	        To: McCormick, Jeremy I.
	        Subject: Re: talk + SVN account
	
	
	        Hello Jeremy,
	
	        So let's start with getting the monitoring application to actually run, since I need that before I can really test anything else. I can initialize it, but I can't actually run it over anything. Obviously, I can not connect to the ET ring, but I should be able to run over an LCIO file. I can not test that, though, because I am unable to generate a readout file. The HPS2014ReadoutToLcio.lcsim steering file's readout to LCIO driver produces an error whenever I run it:
	
	
	
	                java.lang.ClassCastException: org.lcsim.detector.tracker.silicon.HpsSiSensor cannot be cast to org.lcsim.detector.tracker.silicon.HpsTestRunSiSensor
	                    at org.hps.evio.SVTHitWriter.makeFpgaData(SVTHitWriter.java:71)
	                    at org.hps.evio.SVTHitWriter.writeData(SVTHitWriter.java:176)
	                    at org.hps.evio.TestRunTriggeredReconToLcio.process(TestRunTriggeredReconToLcio.java:173)
	                    at org.lcsim.util.Driver.doProcess(Driver.java:273)
	                    at org.lcsim.util.Driver.processChildren(Driver.java:284)
	                    at org.lcsim.util.Driver.process(Driver.java:198)
	                    at org.lcsim.util.DriverAdapter.recordSupplied(DriverAdapter.java:74)
	                    at org.freehep.record.loop.DefaultRecordLoop.consumeRecord(DefaultRecordLoop.java:832)
	                    at org.freehep.record.loop.DefaultRecordLoop.loop(DefaultRecordLoop.java:668)
	                    at org.freehep.record.loop.DefaultRecordLoop.execute(DefaultRecordLoop.java:566)
	                    at org.lcsim.util.loop.LCSimLoop.loop(LCSimLoop.java:151)
	                    at org.lcsim.job.JobControlManager.run(JobControlManager.java:421)
	                    at org.lcsim.job.JobControlManager.run(JobControlManager.java:183)
	                    at org.lcsim.job.JobControlManager.main(JobControlManager.java:172)
	
	
	
	        This error has persisted for a while. Do you know what the problem is? It seems that something is broken with the SVT, which I do not know how to fix. Can you repair this so that I can generate some LCIO data to use with the monitoring application?
	
	        Thanks,
	
	        Kyle
	
	
	
	        On Mon, Dec 8, 2014 at 5:54 PM, McCormick, Jeremy I. <[log in to unmask]> wrote:
	
	
	                Okay, answers below....
	
	                > That might be tricky; in on shift through Thursday so my schedule is rather strange. We might be able to Wednesday morning around noon.
	
	                Wednesday could work fine for me at noon your time.
	
	                > As far as the recent update, you can remove it if you want.
	
	                If you need it for testing, we'll leave it for now.  It doesn't hurt anything really.  I just want to make sure this is not a permanent solution for anything because it isn't.
	
	                > It was a temporary thing for debugging and that was the best way I could think of to get it to the counting house where it could be tested, since I can't run the monitoring application on my computer and the Internet permissions are strange in the counting house.
	
	                Okay, why can't you use the monitoring application on your computer?  The SLAC database which is cloned from JLAB should be accessible to your machine.  If need be you can even clone the entire conditions database to your local machine and run a MySQL server.  It actually isn't that hard to do.  Let me know if you need instructions on this or a SQL file dump in order to do this.  If you are managing your own Linux machine this will only take like 10 minute to do.
	
	                > If you would like me to do this from the conditions database, I need to be able to access it and download the mappings.
	
	                Well, I think you really need to be getting this information from the database instead of a text file in order to reproduce how the monitoring app will actually run in the counting house.
	
	                I have sent several messages to the hps-software list on dumping info from the conditions database using a command line tool.  Can you review them and let me know of any questions?  If you can't find the specific messages let me know and I'll forward to you.
	
	                You can also connect directly to the database through the hpscalibrations account.  (Maybe Nathan can tell you more about this?)
	
	                > I also need to access then by crystal ix and iy, because that is how they are stored in the event display. If you can give me some code that does this I can try to integrate it into the event display.
	
	                Yes, this is easy to do from the class EcalChannel in the conditions module which has ix, iy for geometric ID and the corresponding crate, slot, channel mapping.
	
	                You can see the details here.
	
	                https://confluence.slac.stanford.edu/display/hpsg/ECAL+Channel+Mapping+Conditions
	
	                I'll add a code example there when I get a chance.
	
	
	                On Dec 8, 2014 5:34 PM, "McCormick, Jeremy I." <[log in to unmask]> wrote:
	
	
	                        Hi, Kyle.
	
	                        Can we phone meet at some point to talk about plans/status on software that you're working on?  Let me know some times that are good for you.
	
	                        OR
	
	                        If you want to have a quick gchat instead that might be okay too.
	
	                        I need to make sure we're on the same page as far as configuration of the software and related issues.  For instance, you should not any longer be reading conditions type information like DAQ mapping from text files.  That just doesn't work well anymore now that everything is in a database, primarily because the user then needs to have that text file to even run your classes.  And it may not even be in sync with what is in the database.  (Unless I'm misunderstanding what exactly it is that you're doing recently on the event display with csv files.)
	
	                        Also, on an unrelated note, can you change to using [log in to unmask] for your SVN login?  It should be setup with the same password as your "old" account.
	
	                        --Jeremy
	
	
	
	
	
	
	
	
	



########################################################################
Use REPLY-ALL to reply to list

To unsubscribe from the HPS-SOFTWARE list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=HPS-SOFTWARE&A=1