SLAC PEP-II
BABAR
SLAC<->RAL
Babar logo
HEPIC E,S & H Databases PDG HEP preprints
Organization Detector Computing Physics Documentation
Personnel Glossary Sitemap Search Hypernews
Unwrap page!
Comp. Search
Who's who?
Meetings
FAQ Homepage
Archive
Environment
Administration
New User Info.
Web Info/Tools
Monitoring
Training
Tools & Utils
Programming
C++ Standard
SRT, AFS, CVS
QA and QC
Remedy
Histogramming
Operations
PromptReco
Simulation Production
Online SW
Dataflow
Detector Control
Evt Processing
Run Control
Calibration
Databases
Offline
Workbook
Coding Standards
Simulation
Reconstruction
Prompt Reco.
BaBar Grid
Data Distribution
Beta & BetaTools
Kanga & Root
Analysis Tools
RooFit Toolkit
Data Management
Data Quality
Event display
Event Browser
Code releases
Databases
Check this page for HTML 4.01 Transitional compliance with the
W3C Validator
(More checks...)

Coding Recommendations and Standards

Intro...

[On this page: Overview, Recommendations, Additional documentation]
Other pages: [Background Info: Justification, Languages, Bibliography]
[General Recommendations: (Language Independent)]
[OO/C++ Recommendations] [Recommended C++ classes]


Recent Changes

  • Dec 3, 2003 -- Removed "Offline" and added commend on online (Stephen)
  • Jan 27, 1999 -- Created by merging older pages into new web form (Bob)

Overview

This section will walk somebody new to BaBar through the relevent recommandations and standards.

(This needs to be filled in, but for now, just read down the rest of this page and follow the links)

Beyond the recommendations on this page the Online group has some specific exceptions and futher recommendations.

Recommendations

The recommendations are maintained on several web pages:

Additional Documentation

We have standards for numbering conventions (40k .ps) and what units (39k .ps) to use when writing BaBar software. Please keep them in mind while writing code. (These are also available as 750k and 740k, respectively, .fonts.ps with font inclusion) See also the naming conventions in reconstruction note 4.

There are code templates are located in the "CodeTemplates" CVS package. The approach taken in developing these templates is to make them more complete than you might need, with the intention being that you will remove redundant sections as appropriate. However, their completeness is designed to act as an aid to remembering what sections should be present and in which sequence.

Programming page

C++ standard - almost certainly not a good idea to write something that requires referring to the standard to figure out how it works

Section of the workbook



Maintained by Bob Jacobsen,
Bob_Jacobsen@lbl.gov 510-486-7355