Offline Framework

From Daya Bay
Jump to navigation Jump to search
Fixme: This topic is currently out of date. Until it is updated please start at the Offline Documentation Portal.


Here is the place to talk about the DayaBay Framework (DybGaudi) which is based on the Gaudi framework and added some functionalities required by our Dayabay Neutrino Experiments.

DybGaudi

DybGaudi is a project in CMT terminology and it will need two other projects: Gaudi and LCG_CMT. please refer to the wiki page : Gaudi Install before the installation of DybGaudi. Finally, Gaudi and LCG_CMT will be installed somewhere by the Sites' managers, so uers don't need to care about this. And here, the successful installation of Gaudi and LCG_CMT is assumed!

Operating System supported

Checking DybGaudi Out From SVN

svn co http://dayabay.ihep.ac.cn/svn/dybsvn/dybgaudi/tags/dyb-v1/ dybgaudi

Setup Environment

There is one package named "DybLogin" within DybGaudi project, the requirements file in DybLogin/cmt directory will be used to setup environments for diff. Sites ( such as BNL, IHEP and LBNL). users just uncomment (or choose) one of 3 lines below according to the site you are going to run DybGaudi.

  1. apply_tag IHEP
  2. apply_tag BNL
  3. apply_tag LBNL

and type in the commands

  1. cmt config
  2. source setup.csh (sh)

then the environments will be atomatically setup for you.

Installation

after setting the environment above, users can go to DybRelease/cmt directory and launch the commands:

  1. cmt br cmt config
  2. cmt br make
  3. source setup.csh(sh)


all of packages will be build.

Running

there is one example available in DybExamples/ExHelloworld package to show how to use write one new algorithm and how to use the MessageSvc in DybGaudi in order to print out the information. there are three types of scripts to run this examples in ExHelloWorld/share directory.

  1. HelloWorldInPython.py
  2. HelloWorldOptions.py
  3. HelloWorldOptions.txt

The first one is used to run this example within python with the command " python HelloWorldInPython.py"; The second one is the python script file and be used to run this example within DybGaudi with the command " dyb.exe HelloWorldOptions.py"; The third one is the ascii file script .