Contributing to ROOT...

From: Fons Rademakers (Fons.Rademakers@cern.ch)
Date: Wed Sep 10 1997 - 16:04:17 MEST


Dear ROOT Users,

  as the ROOT userbase grows we hope and expect to see an 
increasing number of user contributed classes, packages and/or
libraries. To be useful each contribution should fulfill a minimum
set of requirements. First lets categorize the type of 
contributions:

1) A fully integrated set of classes
2) A loosely integrated set of classes
3) A non integrated set of classes or functions

Ad 1) fully integrated means:
  - have base classes of the hierarchy inherit from TObject
  - adhere to the ROOT coding conventions
    (http://root.cern.ch/root/Conventions.html)
  - fully support ROOT I/O (via Streamer())
  - fully support graphics (if applicable, via Draw(), Paint(),
    DistancetoPrimitive(), ExecuteEvent(), etc.)
  - provide a CINT interpreter dictionary
  - run on every ROOT supported platform (Unix and Windows)
  E.g.: a set of linear algebra classes

Ad 2) loosely integrated means:
  - have base classes of the hierarchy inherit from TObject
  - fully support ROOT I/O (via Streamer())
  - provide a CINT interpreter dictionary
  E.g.: a set of Monte Carlo simulation classes

Ad 3) non integrated means:
  - provide a CINT interpreter dictionary
  E.g.: a C or C++ based image processing library

People offering a category 1) contribution we propose the following
level of support:

   You keep developing your classes and once in a while when
   you are ready for a release containing new features or bug
   fixes you send us a tar file of the source. We then include
   the source in the general ROOT source tree and build and 
   distribute your classes as an integral part of ROOT (we take 
   care of platform porting issues and feedback the changes we had
   to make), also we take care of generating the HTML documentation.
   For example, this is the way we work with Masaharu Goto on the
   CINT interpreter. However, we expect you to answer questions and
   to fix bugs. Of course you will be mentioned as author in all
   your source files and the copyright stays with you.

For all other contributions we propose:

   You make available via a web page or ftp area your classes
   and a set of Makefiles (for the different platforms) to
   build a shared library. We make a reference form the ROOT
   web site to your package.

Each contribution will enhance and add to the power of the overall
system and our great hope is that a dynamic community will soon
drive the development. Our ideal develoment model is well described
in this paper: http://www.ccil.org/~esr/writings/cathedral.html


-- Fons Rademakers
   and The ROOT Team

-- 
Org:    CERN, European Laboratory for Particle Physics.
Mail:   1211 Geneve 23, Switzerland          Phone: +41 22 7679248
E-Mail: Fons.Rademakers@cern.ch              Fax:   +41 22 7677910



This archive was generated by hypermail 2b29 : Tue Jan 04 2000 - 00:26:20 MET