SLAC PEP-II
BABAR
SLAC<->RAL
Babar logo CM2 logo
HEPIC E,S & H Databases PDG HEP preprints
Organization Detector Computing Physics Documentation
Personnel Glossary Sitemap Search Hypernews
next up previous
Next: Run-time configuration Up: Configuration Previous: Compile-time configuration


Build-time configuration

The build-time configuration consists of coding a new AppUserBuild object to invoke the sequences needed to read the mini and perform the desired physics analysis. An example of an AppUserBuild coded for the mini can be found in BetaMiniUser/AppUserBuild.cc. To add your own analysis module (MyAnalysisModule) from package MyAnalysisPackage, modify the AppUserBuild template aas follows
//-------------------------------
// Collaborating Class Headers --
//-------------------------------
...
#include "MyAnalysisPackage/MyAnalysisModule.hh"
...
AppUserBuild::AppUserBuild( AppFramework* theFramework )
    : AppBuild( theFramework )
{
   ...
  // MyAnalysisModule 
  add(new MyAnalysisModule( "MyAnalysisModule", "my analysis module"));
}
...

Notes:

  1. In the BetaMiniUser package, to build the executable BetaMiniApp which reads the mini, type
            gmake BetaMiniUser.all
    
  2. If you are putting together a new analysis package, do:
            addpkg PackageList
    
    and copy the BetaMiniUser stanza in link_all_reco.mk, changing BetaMiniUser in the new stanza to the name of your package
  3. If new dependencies (i. e., header files) are being added to the existing code, the package dependency files (the ones with .mk suffix) should be updated as follows
            make-linkfiles <package-name>
            cp tmp/$BFARCH/<package-name> *.mk <package-name>/.
    
Once this last step has been done, the code can be compiled and linked in the usual manner.

William Stephen Lockman 2004-05-08