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