[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Changes to JANA and configuration parameters




Hi Folks,

    I just committed some changes to JANA and corresponding ones to the 
Hall-D repository. The following files were affected by this:

Sending        JANA/JApplication.cc
Sending        JANA/JApplication.h
Sending        JANA/JEventLoop.cc
Sending        JANA/JParameterManager.cc
Sending        JANA/JParameterManager.h

Sending        libraries/CDC/DCDCTrackHit_factory.cc
Sending        libraries/FCAL/DFCALShower_factory.cc
Sending        libraries/TRACKING/DMagneticFieldMap.cc
Sending        libraries/TRACKING/DTrackCandidate_factory.cc
Sending        libraries/TRACKING/DTrackEfficiency_factory.cc
Sending        libraries/TRACKING/DTrackHit_factory_MC.cc
Sending        libraries/TRACKING/DTrack_factory.cc
Sending        programs/Analysis/hdview/MyProcessor.cc
Sending        
programs/Analysis/plugins/acceptance_hists/DEventProcessor_acceptance_hists.cc
Sending        
programs/Analysis/plugins/track_hists/DEventProcessor_track_hists.cc
Sending        
programs/Analysis/plugins/upv_hists/DEventProcessor_upv_hists.cc


Thus, if you update your Hall-D source area, you will also need to 
update your JANA source area and vice versa.


The log comment was:

/This modifies the use of the jparms global object for accessing 
configuration parameters. It corresponds to a change in the JANA 
package. The comment from that change is here:

This changes the way the global JParameterManager object is implemented. 
Previously, it was simply a global scope object called jparms allocated 
on the stack prior to main getting called. This caused problems with 
plugins since the plugins (on some OSes) would link in a separate jparms 
(very bad).

Now, jparms has been replaced with gPARMS which is a pointer to a 
JParameterManager object allocated on the heap in the JApplication 
constructor. Also added was a global routine called InitJANAPlugin(...) 
that should be called by all plugins right away with the JApplication 
pointer as the only argument. This sets the gPARMS point to the one kept 
in the JApplication object. It also provides a place for any other 
bootstrapping needed to ensure globals on both sides of the DLL are 
aligned./

If you have any trouble, let me know.

Regards,
-David

-- 

------------------------------------------------------------------------
  David Lawrence Ph.D.
  Staff Scientist                 Office: (757)269-5567   [[[  [   [ [       
  Jefferson Lab                   Pager:  (757)584-5567   [  [ [ [ [ [   
  http://www.jlab.org/~davidl     davidl@jlab.org         [[[  [[ [[ [[[
------------------------------------------------------------------------