Print

Print


On Apr 2, 2013, at 11:31 AM, Graf, Norman A. wrote:

> Hello Andrew,
> That was step one. You will still need to generate the dictionaries
> in order to use the LCIO classes directly from within root.

any further suggestions on how to proceed?
-y


> Norman
> 
> ________________________________________
> From: [log in to unmask] [[log in to unmask]]
> Sent: Tuesday, April 02, 2013 8:29 AM
> To: Yuri Gershtein
> Cc: Graf, Norman A.; Omar Moreno; McCormick, Jeremy I.; hps-software
> Subject: Re: DSTs and work on slcio files using C++
> 
> Hello all,
> 
> I got LCIO to build successfully! The problem was with the ROOT
> dictionaries, and the line of code Omar suggested did the trick.
> 
> Thanks everyone for your help,
> 
> Andrew
> 
>> Not yet, Andrew has classes to deal with first ;)
>> So far the suggestions were:
>> - verify cmake version (I think it's a very recent one because Andrew said
>> he had to install it for this)
>> - check the build without dictionaries
>> 
>> we;ll get back to you.
>> Thanks,
>> -y
>> 
>> On Apr 2, 2013, at 10:55 AM, Graf, Norman A. wrote:
>> 
>>> Hello Yuri,
>>> Did you verify that your LCIO build was successful without specifying
>>> the
>>> root dictionary be built?
>>> Norman
>>> 
>>> ________________________________
>>> From: [log in to unmask] [[log in to unmask]] On
>>> Behalf Of Yuri Gershtein [[log in to unmask]]
>>> Sent: Tuesday, April 02, 2013 7:32 AM
>>> To: Omar Moreno
>>> Cc: McCormick, Jeremy I.; hps-software; [log in to unmask]
>>> Subject: Re: DSTs and work on slcio files using C++
>>> 
>>> Hi Omar,
>>> 
>>> great, so RH and MacOS work.
>>> Question is what to do if you have an Ubuntu.
>>> We'll try compiling without dictionaries and see what happens.
>>> But then again it would be unusable for our purposes, no?
>>> 
>>> -y
>>> 
>>> On Apr 2, 2013, at 3:46 AM, Omar Moreno wrote:
>>> 
>>> I went ahead and built LCIO using the instructions found on the
>>> confluence and I didn't have an issue.  I used ROOT version 5.34, cmake
>>> version 2.8.6 on OpenSuse 12.1.  Building LCIO requires a cmake version
>>> greater than 2.6 so make sure that you have that installed.
>>> 
>>> It looks like the problem is occurring when it's trying to generate the
>>> LCIO ROOT dictionaries (I think).  If you issue the following cmake
>>> command
>>> 
>>> 
>>> cmake -D BUILD_ROOTDICT=0 -D ROOT_DIR=$ROOTSYS ..
>>> 
>>> 
>>> and then issue the make command, does LCIO build successfully?
>>> 
>>> 
>>> --Omar Moreno
>>> 
>>> 
>>> On Mon, Apr 1, 2013 at 4:36 PM, Yuri Gershtein
>>> <[log in to unmask]<mailto:[log in to unmask]>>
>>> wrote:
>>> Hi,
>>> 
>>> yes, e-mail list was cc-ed…
>>> Adding Andrew to the thread again.
>>> 
>>> He should verify, but I think it's a modern root release (5.34), and
>>> ROOTSYS and LD_LIBRARY_PATH are set.
>>> Now with LCIO I am not sure - your instructions say to svn from the
>>> trunk.
>>> I'm not even positive that what I have on my Mac is the same version.
>>> 
>>> -y
>>> 
>>> 
>>> On Apr 1, 2013, at 7:31 PM, Omar Moreno wrote:
>>> 
>>> 
>>> I think the email was initially sent to the mailing list.
>>> 
>>> It looks like the errors occurs when compiling LCIO.  What version of
>>> LCIO are you trying to compile? Also, what version of ROOT are you
>>> running?  Finally, have you set ROOTSYS and added the root libraries to
>>> your path?
>>> 
>>> --Omar Moreno
>>> 
>>> On Apr 1, 2013 4:04 PM, "McCormick, Jeremy I."
>>> <[log in to unmask]<mailto:[log in to unmask]>> wrote:
>>> 
>>> 
>>> Begin forwarded message:
>>> 
>>> From: "McCormick, Jeremy I."
>>> <[log in to unmask]<mailto:[log in to unmask]><mailto:[log in to unmask]<mailto:[log in to unmask]>>>
>>> Subject: Re: DSTs and work on slcio files using C++
>>> Date: April 1, 2013 4:00:02 PM PDT
>>> To: Yuri Gershtein
>>> <[log in to unmask]<mailto:[log in to unmask]><mailto:[log in to unmask]<mailto:[log in to unmask]>>>
>>> Cc: Omar Moreno
>>> <[log in to unmask]<mailto:[log in to unmask]><mailto:[log in to unmask]<mailto:[log in to unmask]>>>,
>>> "Nelson, Timothy Knight"
>>> <[log in to unmask]<mailto:[log in to unmask]><mailto:[log in to unmask]<mailto:[log in to unmask]>>>,
>>> "Neal, Homer A."
>>> <[log in to unmask]<mailto:[log in to unmask]><mailto:[log in to unmask]<mailto:[log in to unmask]>>>,
>>> "Jaros, John A."
>>> <[log in to unmask]<mailto:[log in to unmask]><mailto:[log in to unmask]<mailto:[log in to unmask]>>>,
>>> "Graham, Mathew Thomas"
>>> <[log in to unmask]<mailto:[log in to unmask]><mailto:[log in to unmask]<mailto:[log in to unmask]>>>,
>>> "Graf, Norman A."
>>> <[log in to unmask]<mailto:[log in to unmask]><mailto:[log in to unmask]<mailto:[log in to unmask]>>>,
>>> "Moreno, Omar"
>>> <[log in to unmask]<mailto:[log in to unmask]><mailto:[log in to unmask]<mailto:[log in to unmask]>>>,
>>> Maurik Holtrop
>>> <[log in to unmask]<mailto:[log in to unmask]><mailto:[log in to unmask]<mailto:[log in to unmask]>>>,
>>> hps-software
>>> <[log in to unmask]<mailto:[log in to unmask]><mailto:[log in to unmask]<mailto:[log in to unmask]>>>,
>>> "[log in to unmask]<mailto:[log in to unmask]><mailto:[log in to unmask]<mailto:[log in to unmask]>>"
>>> <[log in to unmask]<mailto:[log in to unmask]><mailto:[log in to unmask]<mailto:[log in to unmask]>>>
>>> 
>>> Hi, please use the hps-software mailing list as it gets archived and
>>> most of these people are on it.
>>> 
>>> Looks like a simple namespace issue.  Is there a missing declaration
>>> like...
>>> 
>>> using namespace lcio;
>>> 
>>> Or if not that is it simply failing to find the lcio build?  Did the
>>> lcio build complete without errors?
>>> 
>>> On Apr 1, 2013, at 3:44 PM, "Yuri Gershtein"
>>> <[log in to unmask]<mailto:[log in to unmask]><mailto:[log in to unmask]<mailto:[log in to unmask]>>>
>>> wrote:
>>> 
>>> 
>>> Hi Omar,
>>> 
>>> as I mentioned, I followed these instructions and they worked perfectly
>>> for me on my Mac.
>>> 
>>> Now my new student Andrew (Andrew meet the software experts, software
>>> experts meet Andrew)
>>> Running Ubuntu 12.04 LTS 64 bit, the instructions break.
>>> I.e. when he does make install he gets an error with the following
>>> disgnostics:
>>> 
>>> 56%] Building CXX object
>>> lcio/CMakeFiles/lcioDict.dir/__/rootdict/UTIL.cxx.o
>>> In file included from
>>> /home/chill/Research/lcio/trunk/build/rootdict/UTIL.h:39:0,
>>>               from
>>> /home/chill/Research/lcio/trunk/build/rootdict/UTIL.cxx:17:
>>> /home/chill/Research/lcio/trunk/src/cpp/include/UTIL/LCIterator.h: In
>>> constructor ‘UTIL::LCIterator<T>::LCIterator(EVENT::LCEvent*, const
>>> string&)’:
>>> /home/chill/Research/lcio/trunk/src/cpp/include/UTIL/LCIterator.h:69:10:
>>> error: ‘lcio’ has not been declared
>>> /home/chill/Research/lcio/trunk/src/cpp/include/UTIL/LCIterator.h: In
>>> constructor ‘UTIL::LCIterator<T>::LCIterator(EVENT::LCCollection*)’:
>>> /home/chill/Research/lcio/trunk/src/cpp/include/UTIL/LCIterator.h:89:10:
>>> error: ‘lcio’ has not been declared
>>> make[2]: *** [lcio/CMakeFiles/lcioDict.dir/__/rootdict/UTIL.cxx.o] Error
>>> 1
>>> make[1]: *** [lcio/CMakeFiles/lcioDict.dir/all] Error 2
>>> make: *** [all] Error 2
>>> 
>>> 
>>> We just went together through the instructions from scratch, and the
>>> error persists.
>>> Did you see anything like that before?
>>> 
>>> Since we are uploading things from the trunk, is it possible that the
>>> version he just downloaded is a
>>> different one?
>>> 
>>> Thanks!
>>> -y
>>> 
>>> 
>>> On Mar 7, 2013, at 10:20 PM, Omar Moreno wrote:
>>> 
>>> 
>>> Hello Yuri,
>>> 
>>> On Thu, Mar 7, 2013 at 6:54 PM, Yuri Gershtein
>>> <[log in to unmask]<mailto:[log in to unmask]><mailto:[log in to unmask]<mailto:[log in to unmask]>>>
>>> wrote:
>>> Hi Tim,
>>> 
>>> 
>>> Sorry... I didn't mean to ding you for not googling first,
>>> 
>>> ;) no harm done.
>>> 
>>> 
>>> I think all of your questions are good ones that we don't have answers
>>> to yet, and are the types of things we are grappling with in these
>>> discussions.
>>> 
>>> I guess I propose we figure out the boundary conditions resource-wise
>>> that we're dealing with first,
>>> and then figure out what kind of event content we can afford.
>>> 
>>> The question of ROOT vs LCIO here is probably separate. ROOT is pretty
>>> good at packing the data,
>>> but then again I guess LCIO is as well, so size-wize this should not
>>> matter, correct?
>>> And if I can write a C++ program that reads in  a file and writes out a
>>> root tree, this is just my analysis job.
>>> I.e. even in CMS, where all data, even RAW, are root files, I make
>>> another root tree for my own analyses purposes,
>>> and I actually see advantages in having LCIO microDSTs. An Ntuplizer
>>> that has TClonesArrays of
>>> some simple classes is pretty straightforward to write once we know the
>>> content, so I do not see how
>>> this is worth an argument at this point...
>>> 
>>> How do I get Omar's code? I'd like to see if we can start using C++ to
>>> read in lcio files that we generate here at Rutgers.
>>> 
>>> If you simple want to read LCIO files using the C++ API, I would start
>>> here:
>>> https://confluence.slac.stanford.edu/display/hpsg/Loading+LCIO+Files+into+ROOT
>>> 
>>> Here you will find all the instructions needed to install the LCIO
>>> library and will find a couple of examples.
>>> 
>>> If you want access to my code it is in a github.  You can clone the repo
>>> using the following command:
>>> 
>>> 
>>> 
>>> 
>>> git clone https://github.com/omar-moreno/hps_dst/
>>> 
>>> 
>>> 
>>> 
>>> The repo will contain the converter and the API used to access the event
>>> information.  In order to build the binaries, simply use the Make
>>> command.  Note that you need to make sure that the environmental
>>> variables described in the first link have been set correctly in order
>>> for the make command to work.
>>> 
>>> 
>>> Once the binaries are made you can get usage information as follows:
>>> 
>>> 
>>> ./bin/write_hps_event -h
>>> 
>>> 
>>> If you look at the converter code, it should give you an idea of how to
>>> loop over an LCIO event, access collections and so on.  Also, if you run
>>> the following command
>>> 
>>> 
>>> ./bin/write_hps_event -i <lcio file> -d
>>> 
>>> 
>>> If will dump a printout of the collections available in the lcio file.
>>> Something like this
>>> 
>>> 
>>> ---------------------------------------------------------------------------
>>> COLLECTION NAME               COLLECTION TYPE          NUMBER OF
>>> ELEMENTS
>>> ===========================================================================
>>> ConfirmedMCParticles          MCParticle                       0
>>> EcalCalHits                   CalorimeterHit                   2
>>> EcalClusters                  Cluster                          1
>>> EcalReadoutHits               RawCalorimeterHit               12
>>> FPGAData                      LCGenericObject                  7
>>> HelicalTrackHitRelations      LCRelation                       0
>>> HelicalTrackHits              TrackerHit                       0
>>> HelicalTrackMCRelations       LCRelation                       0
>>> MatchedTracks                 Track                            0
>>> RotatedHelicalTrackHitRelationsLCRelation                       0
>>> RotatedHelicalTrackHits       TrackerHit                       0
>>> RotatedHelicalTrackMCRelationsLCRelation                       0
>>> SVTFittedRawTrackerHits       LCRelation                      43
>>> SVTRawTrackerHits             TrackerRawData                  43
>>> SVTShapeFitParameters         LCGenericObject                 43
>>> SeededMCParticles             MCParticle                       0
>>> StripClusterer_SiTrackerHitStrip1DTrackerHit                       0
>>> TriggerBank                   LCGenericObject                  1
>>> ---------------------------------------------------------------------------
>>> 
>>> 
>>> 
>>> This will give you the collection names you can access using the LCIO
>>> C++ API.
>>> 
>>> 
>>> I must note that there are a lot of changes that I haven't pushed yet.
>>> I hoping to do that sometime this weekend once I have sometime I am
>>> happy with.
>>> 
>>> 
>>> Let me know if you have any questions or issues running it.
>>> 
>>> 
>>> --Omar Moreno
>>> 
>>> 
>>> 
>>> 
>>> 
>>> -y
>>> 
>>> 
>>> Tim
>>> 
>>> On Mar 7, 2013, at 5:23 PM, Yuri Gershtein
>>> <[log in to unmask]<mailto:[log in to unmask]><mailto:[log in to unmask]<mailto:[log in to unmask]>>>
>>> wrote:
>>> 
>>> Hi Tim,
>>> 
>>> thanks, and apologies for not googling things before asking.
>>> 
>>> Yes, certainly, it is practical.  LCIO was long ago settled on as the
>>> EDM for HPS and the LCIO output will be the raw output format of the
>>> experiment. Like any persistency framework, we can decide exactly what
>>> parts of the events we can afford to output to tape.  That content has
>>> not yet been settled. There are some things that for whatever reason
>>> haven't been persisted as LCIO objects in the past (but should be) and
>>> there are other things we have been writing to the events that won't be
>>> feasible to keep when we have large volumes of data.
>>> 
>>> Should we have this discussion with some concrete numbers for what the
>>> event sizes are going to be then and what computing / storage resources
>>> are going to be available at which sites?
>>> 
>>> One could make an LCIO micro-DST also, but it seems the desire is to
>>> convert to ROOT at the point of slimming the data for analysis.
>>> 
>>> Oh, I'm all for it, but there is also value in being able to run the
>>> same or similar code on DST or micro-DST…
>>> It's also would be great to define what is meant by "analysis" here -
>>> is alignment analysis? ECAL calibration? Development of electron ID?
>>> Do you foresee that it is all done in DST, or you have a separate
>>> calibration stream?
>>> 
>>> Again, sorry,  I'm just trying to come up to speed with the computing
>>> model,
>>> may be I can google those kind of questions as well…
>>> 
>>> thanks,
>>> -y
>>> 
>>> --------------------------
>>> Prof. Yuri Gershtein
>>> [log in to unmask]<mailto:[log in to unmask]><mailto:[log in to unmask]<mailto:[log in to unmask]>>
>>> http://physics.rutgers.edu/~gershtein
>>> (732)445-5500
>>> x1794<tel:%28732%29445-5500%20x1794><tel:%28732%29445-5500%20x1794>
>>> W316 Serin Building
>>> Department of Physics and Astronomy
>>> 136 Frelinghuysen Rd
>>> Rutgers University
>>> Piscataway, NJ 08854
>>> 
>>> 
>>> 
>>> 
>>> --------------------------
>>> Prof. Yuri Gershtein
>>> [log in to unmask]<mailto:[log in to unmask]><mailto:[log in to unmask]<mailto:[log in to unmask]>>
>>> http://physics.rutgers.edu/~gershtein
>>> (732)445-5500
>>> x1794<tel:%28732%29445-5500%20x1794><tel:%28732%29445-5500%20x1794>
>>> W316 Serin Building
>>> Department of Physics and Astronomy
>>> 136 Frelinghuysen Rd
>>> Rutgers University
>>> Piscataway, NJ 08854
>>> 
>>> 
>>> 
>>> --------------------------
>>> Prof. Yuri Gershtein
>>> [log in to unmask]<mailto:[log in to unmask]><mailto:[log in to unmask]<mailto:[log in to unmask]>>
>>> http://physics.rutgers.edu/~gershtein
>>> (732)445-5500 x1794<tel:%28732%29445-5500%20x1794>
>>> W316 Serin Building
>>> Department of Physics and Astronomy
>>> 136 Frelinghuysen Rd
>>> Rutgers University
>>> Piscataway, NJ 08854
>>> 
>>> 
>>> 
>>> ########################################################################
>>> 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
>>> 
>>> --------------------------
>>> Prof. Yuri Gershtein
>>> [log in to unmask]<mailto:[log in to unmask]>
>>> http://physics.rutgers.edu/~gershtein
>>> (732)445-5500 x1794<tel:%28732%29445-5500%20x1794>
>>> W316 Serin Building
>>> Department of Physics and Astronomy
>>> 136 Frelinghuysen Rd
>>> Rutgers University
>>> Piscataway, NJ 08854
>>> 
>>> 
>>> 
>>> --------------------------
>>> Prof. Yuri Gershtein
>>> [log in to unmask]<mailto:[log in to unmask]>
>>> http://physics.rutgers.edu/~gershtein
>>> (732)445-5500 x1794
>>> W316 Serin Building
>>> Department of Physics and Astronomy
>>> 136 Frelinghuysen Rd
>>> Rutgers University
>>> Piscataway, NJ 08854
>>> 
>>> 
>>> ________________________________
>>> 
>>> 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
>>> <winmail.dat>
>> 
>> --------------------------
>> Prof. Yuri Gershtein
>> [log in to unmask]
>> http://physics.rutgers.edu/~gershtein
>> (732)445-5500 x1794
>> W316 Serin Building
>> Department of Physics and Astronomy
>> 136 Frelinghuysen Rd
>> Rutgers University
>> Piscataway, NJ 08854
>> 
>> 
> 

--------------------------
Prof. Yuri Gershtein
[log in to unmask]
http://physics.rutgers.edu/~gershtein
(732)445-5500 x1794
W316 Serin Building
Department of Physics and Astronomy
136 Frelinghuysen Rd
Rutgers University
Piscataway, NJ 08854

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