BRat 1.12.0

From: Flemming Videbaek (videbaek@sgs1.hirg.bnl.gov)
Date: Wed Nov 22 2000 - 17:02:15 EST

  • Next message: Christian Holm Christensen: "BRAT 1.12.1"

     
    Updates to BRAT.
    
     
    
    Please take notice, some of these changes are significant and you will have to take action to have previous code to work.
    
     This is the first set of changes needed to deal with geometry properly and be able to use standard as well 
    
    as own optimized sets.
    
    In addition hopefull all Init() has been removed properly from Module constructors.
    
     For many modulest here is no handy 'testsuite' so errors may have been introduced by overlooking material in the code. This
    
    Also implies that analysis code should always call the Init() for defined modules (can eg. Be done by
    
    Adding modules used into a BRModuleContainer and then calling the Init(0 method for it.
    
    Thus be careful before you check this version out in the sense you should be prepare to
    
     update macro's and executables.For this reason it has also been tagged as Version 1.12.0 (cvs rtag BRAT-1-12-0).
    
     
    
    The package was exported to a scratch disk, compiled and checked.
    
     
    
    Some of the significant changes.
    
     
    
    BrMagnetVolume now derives from BrDetectorVolume. Thus several duplicate methods are gone -
    
    The BrMagnetVolume has additional info over the default volume e.g. the effective edge etc. The ReadFile
    
    Is gone replaced by an ReadASCIIFile that overrides the base class. 
    
    The base class reading now ignores reading in the .geo files of MAGNET content.
    
     Thus magnet geometry is defined only one place which is good. 
    
    This hierarchy of volume classes could also be a nice way of hiding the 4 slats of TOFW - a number that will be 6 in next years run. 
    
     
    
    I removed the few places in some tracking code where an explicit reference to magnet info taken from
    
    The .geo file was included.
    
     
    
    The BrGeometryDbManager now has a list of files to be read for geometry information.
    
     It searches for a volume with a given name starting from the first file and goes on. A nil pointer is return if no information is found. 
    
     
    
     
    
    Clean up of Init entries. 
    
    Init() method must now always be called. 
    
    Many instances of code that relied on (misguided by example) setting up parameters and accessing the geometry and detector parameters files in the constructor is now moved to a Init() method. 
    
    As much as possible of this has been checked, but there could well be some problems. 
    
    PC has also been doing some of this but un-committed. 
    
    I hope the changes are similar, and will not cause disruption and discrepancies.
    
     
    
    An example how to use the file access can be found in brat/test/TestGeometryManager.cxx
    
     
    
     
    
     
    
     
    
     
    
    Minimum changes in your code
    
     
    
      a.. Where ever gGeomDB->SetMagnetFile(magnetfile) replace by gGeomDb->SetDBFile(magnetfile)
      b.. For any kind of Module make sure the Init() method is called. For combined module
     
    
     
    
    Changes in some brat applications
    
    BrGeanbtDigitze
    
    -          Add fDigitize->Init() in Init() on BrGeantDigitize();
    
    TestPid()
    
    -          remove reference to SetDbMagnetFile
    
     
    
     
    
    Init moved added. In most cases the change is simply to take the calls of
    
    GGeomDb->GetDetectorVolume(Name). and move to Init().
    
     
    
    BrDigitizeDC()
    
    BrRdoModuleBB()
    
    BrDigitizeTof()
    
    BrCalibrateTof()
    
     
    
    BrFFSTrackingModule()
    
     
    
    TPC tracking modules
    
     
    
    BrDigitiMult..()
    
    BrMRSPid - constructor
    
    BrPidModule()
    
    BrTPMClusterVertexModule()
    
    BrVertexModule.cxx
    
    n       added an Init(); moved init of BB  from Event to Init(); calls init of 'sub modules'
    
     
    
    BrTPMTrackVertexModule
    
    Init moved from Private to public. (MUST be so).
    
     
    
     
    
    List of files modified 
    
     
    
    M brat/base/inc/BrDetectorVolume.h
    
    M brat/base/inc/BrMagnetVolume.h
    
    M brat/base/src/BrDetectorVolume.cxx
    
    M brat/base/src/BrMagnetVolume.cxx
    
    M brat/bb/src/BrDigitizeBB.cxx
    
    M brat/bb/src/BrRdoModuleBB.cxx
    
    M brat/db/inc/BrGeometryDbManager.h
    
    M brat/db/src/BrGeometryDbManager.cxx
    
    M brat/geant/src/BrGeantDigitize.cxx
    
    M brat/mult/src/BrDigitizeMultSi.cxx
    
    M brat/mult/src/BrDigitizeMultTile.cxx
    
    M brat/pid/src/BrFFSPid.cxx
    
    M brat/pid/src/BrMRSPid.cxx
    
    M brat/pid/src/BrPidModule.cxx
    
    M brat/test/Makefile
    
    M brat/test/TestGeantDig.cxx
    
    M brat/test/TestGeantIO.cxx
    
    M brat/test/TestMagnetVolume.cxx
    
    M brat/test/TestPid.cxx
    
    M brat/test/brat-config
    
    M brat/tof/src/BrCalibrateTof.cxx
    
    M brat/tof/src/BrDigitizeTof.cxx
    
    M brat/tpc/inc/BrTrackFollowFinderModule.h
    
    M brat/tpc/src/BrDigitizeTPC.cxx
    
    M brat/tpc/src/BrTrackFinderBase.cxx
    
    M brat/tpc/src/BrTrackFollowFinder.cxx
    
    M brat/tpc/src/BrTrackFollowFinderModule.cxx
    
    M brat/track/inc/BrFFSTrackingModule.h
    
    M brat/track/inc/BrMRSTrackingModule.h
    
    M brat/track/inc/BrModuleMatchTrack.h
    
    M brat/track/inc/BrSpectrometerTracks.h
    
    M brat/track/src/BrFFSTrackingModule.cxx
    
    M brat/track/src/BrMRSTrackingModule.cxx
    
    M brat/track/src/BrModuleMatchTrack.cxx
    
    M brat/vtx/inc/BrTPMClusterVertexModule.h
    
    M brat/vtx/inc/BrTPMTrackVertexModule.h
    
    M brat/vtx/inc/BrVertexModule.h
    
    M brat/vtx/src/BrTPMClusterVertexModule.cxx
    
    M brat/vtx/src/BrTPMTrackVertexModule.cxx
    
    M brat/vtx/src/BrVertexModule.cxx
    
     
    
     Please report problem - Event though it is Great Turkey day, I will check e-mail etc.
    
     
    
     ------------------------------------------------------
    Dr. Flemming Videbaek
    Physics Department
    Brookhaven National Laboratory
    
    
    tlf: 631-344-4106
    e-mail: videbaek@bnl.gov
    



    This archive was generated by hypermail 2b29 : Wed Nov 22 2000 - 16:59:52 EST