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

Major revision to Hall-D offline code




Hi Folks,

    As I threatened, I have modified a whole lot of files in the Hall-D 
source code repository. These correspond to recent changes to JANA. In 
order to compile and use the current (trunk) version, you will need to 
install JANA 0.4.1. This is available on the JANA website 
http://www.jlab.org/JANA.

I would suggest moving any old code out of the way and starting with a 
fresh checkout of the source as opposed to just doing a svn update, 
tough both should work.

Below is copied the svn comment outlining the changes.

Please let me know if you run into any problems or have and 
questions/comments.

Regards,
-David
===========================================


This commit represents some significant changes to Hall-D offline source 
code.
These correspond to changes in JANA, but also represent some cleanup of
unused files. There are also some significant changes to hdview2.

The 2 most significant changes to JANA that required editing of files in
every package were:

1. JANA was placed inside its own namespace called "jana"

2. The toString() mechanism used by the factories to print objects
   as formatted data was replaced by one that moves this functionality
    primarily to the the data objects themselves (JObject).

Item 2. required most of the modifications since the old system was so
ingrained. A toString() method still exists in each factory, but is
implemented at the JFactory<> level and so descendents of JFactory no
longer need to implement one. Another result of this was that factories
whose sole purpose was to provide a toString method are now replaced
with simple typedef statements in the appropriate XXX_init.cc file.
The factory files themselves were deleted with this commit to clean
the directories up some. For example, the DFCALTruthShower_factory.* files
were deleted and replaced with a single typedef in FCAL_init.cc. The
formatted printing functionality was moved to DFCALTruthShower.h

The old JANA macro HDCLASSDEF was replaced by a new macro, JOBJECT_PUBLIC.
The JObject class now takes on a larger role also. The oid_t data type
used for object identifiers was moved into the JObject class itself and
so must be identified by JObject::oid_t.

A few directories were removed that were either obsolete, or unused at
the current time with no need for them forseen in the immediate future.
These were all subdirectories of src/libraries. These were:
CHERENKOV, ONLINE, TRIGGER, JILIO, and UPV
Note that the ONLINE and TRIGGER libraries may be re-created at some point
in the future. Possibly as a combined entity.

The DMCThrown class had all of the redundant members removed. Some time
ago it was made to derive from DKinematicData, but there were so many places
in the code that used the old data members that both were kept. With
this commit, all references to the old members throughout the src tree
have been replaced by accesses to the DKinematicData class members.

The hdview2 program has some significant modifications. These are
mainly that a new Track Inspector top-level window has been added
along with some (disabled) buttons for pulling up inspectors for
other detector systems. Also, the up,down,left, and right buttons
have been replaced with ones that can allow shifting in all 3 dimensions.
The track inspector is not quite finished, but was in the works
when the JANA changes were made and so is being included here as part of
the re-alignment.

Some basic testing of this has been done with hd_dump and hdview2, but
nothing too terribly extensive.

Note that this now requires JANA version 0.4.1 or greater.

-- 

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