Print

Print


Okay! The more unconventional your code is, the harder it is for us to 
help you if you get stuck. But if you can figure out how to do things your 
way, more power to you.

On Sat, 25 Jul 2015, Sebouh Paul wrote:

> I figured out a different approach to this; when reading LCIO events from a
> file, every object in there has to be converted, and a converter must be
> present.  So I just created a dummy converter for the type of object that
> existed in the file but the converter wasn't available.  this way i didnt
> have to mess with hps-java, and was able to just use my own main method.
>
> On Fri, Jul 24, 2015 at 10:13 PM, Graf, Norman A. <[log in to unmask]>
> wrote:
>
>> Hey Nathan,
>>  In general, you can find out this information for any jar file via:
>>
>>>  unzip -p hps-distribution-3.4.0-SNAPSHOT-bin.jar META-INF/MANIFEST.MF
>>
>> It will show up as Main-Class if defined.
>> Norman
>>
>> ________________________________________
>> From: [log in to unmask] <[log in to unmask]> on
>> behalf of Sho Uemura <[log in to unmask]>
>> Sent: Friday, July 24, 2015 5:53 PM
>> To: Nathan Baltzell
>> Cc: Sebouh Paul; hps-software
>> Subject: Re: error reading LCIO file
>>
>> It executes org.hps.job.JobManager.main() - org.hps.job.JobManager is the
>> main class (there's a line in the hps-distribution pom.xml that sets
>> this).
>>
>> On Fri, 24 Jul 2015, Nathan Baltzell wrote:
>>
>>> I have a java-for-dummies question:
>>>
>>>> java -jar hps-distribution-bin.jar -i lcioFile.slcio steeringFile.xml
>>>
>>> In what code in hps-java does this command start execution?
>>> Or what is the main class here (is that the correct jargon?)?
>>>
>>> (I'm only familiar with "java -cp hps.jar org.hps.evio.EvioToLcio".)
>>>
>>> -Nathan
>>>
>>>
>>>
>>> On Jul 24, 2015, at 8:27 PM, Sho Uemura <[log in to unmask]> wrote:
>>>
>>>> Instead of writing a main() class and doing your analysis inside it,
>> you would probably find it easier to write a Driver. Then the existing
>> hps-java code will take care of reading events from the file and passing
>> EventHeaders to your Driver.
>>>>
>>>> Roughly:
>>>>
>>>> 1. Follow the instructions to install and build hps-java (maybe you've
>> done this already):
>> https://confluence.slac.stanford.edu/display/hpsg/Installing+HPS+Java
>>>>
>>>> 2. Make a class that extends Driver, much like what you already seem to
>> have in
>> trunk/users/src/main/java/org/hps/users/spaul/HitrateHistograms.java. You
>> can put your analysis code in the method process(EventHeader event).
>>>>
>>>> 3. Build hps-java to compile your Driver into an hps-distribution .jar
>> file.
>>>>
>>>> 4. Write a steering file that calls your Driver, much like what you
>> have in
>> trunk/steering-files/src/main/resources/org/hps/steering/users/spaul/HitrateHistograms.lcsim.
>>>>
>>>> 5. Run the steering file on data:
>>>>
>>>> java -jar hps-distribution-bin.jar -i lcioFile.slcio steeringFile.xml
>>>>
>>>>
>>>> If there's a reason a Driver is not appropriate for what you're doing,
>> maybe we can figure something out that works. What you're doing now seems
>> really strange without some more explanation.
>>>>
>>>> On Fri, 24 Jul 2015, Sebouh Paul wrote:
>>>>
>>>>> this seems like a stupid question but how do I get an "EventHeader"
>> from a
>>>>> file?
>>>>>
>>>>> I get this error:
>>>>>
>>>>> ifarm1101> java -cp "lib/*:bin" hps.protonradius.GetCharge
>>>>>
>> /work/hallb/hps/data/engrun2015/pass1/recon/hps_005779.81_recon_R3321.slcio
>>>>> 5779
>>>>>
>>>>> blah
>>>>>
>>>>> Exception in thread "main"
>>>>> org.lcsim.conditions.ConditionsManager$ConditionsSetNotFoundException:
>> No
>>>>> converter registered for type: org.lcsim.geometry.Detector
>>>>>
>>>>> at
>>>>>
>> org.lcsim.conditions.ConditionsManagerImplementation.getCachedConditions(ConditionsManagerImplementation.java:92)
>>>>>
>>>>> at
>> org.lcsim.event.base.BaseLCSimEvent.getDetector(BaseLCSimEvent.java:76)
>>>>>
>>>>> at
>>>>>
>> org.lcsim.lcio.SIOTrackBlockHandler.addCollectionElements(SIOTrackBlockHandler.java:23)
>>>>>
>>>>> at
>>>>>
>> org.lcsim.lcio.AbstractBlockHandler.readCollection(AbstractBlockHandler.java:39)
>>>>>
>>>>> at
>>>>>
>> org.lcsim.lcio.AbstractBlockHandler.readBlock(AbstractBlockHandler.java:32)
>>>>>
>>>>> at org.lcsim.lcio.LCIOReader.read(LCIOReader.java:77)
>>>>>
>>>>> at hps.protonradius.GetCharge.main(GetCharge.java:22)
>>>>>
>>>>>
>>>>> With this program:
>>>>>
>>>>> public class GetCharge {
>>>>>
>>>>> public static void main(String arg[]) throws IOException,
>>>>> NumberFormatException, ConditionsNotFoundException{
>>>>>
>>>>> LCIOReader reader = new LCIOReader(new File(arg[0]));
>>>>>
>>>>>
>> //ConditionsManagerImplementation.defaultInstance().setRun(Integer.parseInt(arg[1]));
>>>>>
>>>>> //ConditionsManagerImplementation.defaultInstance().
>>>>>
>>>>> System.out.println("blah");
>>>>>
>>>>> EventHeader h = reader.read();
>>>>>
>>>>> while(h != null){
>>>>>
>>>>> process(h);
>>>>>
>>>>> }
>>>>>
>>>>> System.out.println("done");
>>>>>
>>>>> }
>>>>>
>>>>> ....
>>>>>
>>>>> }
>>>>>
>>>>>
>> ########################################################################
>>>>> 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
>>>>>
>>>>
>>>> ########################################################################
>>>> 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
>>>
>>> ########################################################################
>>> 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
>>>
>>
>> ########################################################################
>> 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
>>
>
> ########################################################################
> 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
>

########################################################################
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