Print

Print


Do you need root dict support?  I thought our code uses the standalone lcio api.  Correct me if I am wrong.

On Apr 2, 2013, at 9:18 AM, "[log in to unmask]" <[log in to unmask]> wrote:

> Hi Omar,
>
> The file is attached. Also, my version of Cmake is 2.8.7, just to clear
> that up.
>
> Andrew
>
>> Hello Andrew and Yuri,
>>
>> In order to run the the LCIO to ROOT converter you are going to need to
>> compile the LCIO ROOT dictionaries i.e. BUILD_ROOTDICT=1. However, this at
>> least gives us a hint as to what may be the problem.
>>
>> Can you try running
>>
>> cmake -D BUILD_ROOTDICT=1 -D ROOT_DIR=<your ROOT directory> ..
>>
>>
>> again, and then send me the file "CMakeCache.txt" located in the
>> directory lcio/trunk/build/ ?
>>
>>
>>
>> --Omar Moreno
>>
>>
>>
>> On Tue, Apr 2, 2013 at 8:29 AM, <[log in to unmask]> wrote:
>>
>>> 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
> <CMakeCache.txt>

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