Review of recent PSU mudst code

The PSU code released in July 2012 was the result of an attempt to modify the PSU software to make it possible for us to maintain a single version the PSU analysis code that could be used either with trigger data or with mudst data.

The most recent release from that effort is at

http://www.star.bnl.gov/protected/spin/heppelmann/fmsCode/BuildRunFMS_NMSP_7_5_2012.tgz

The goal was that the same chain of jobs that we can run through condor to analyze all trigger data in near real time from when the data are collected can now be run either from the root12fms with code in root12fms/FpdRoot or from mudst files.

(note: various path needed for running FMS code are defined by executing "source SetFMSEnv".)

The changes that were made include:

1) Keeping only one directory with FMS code to be used both in StRoot applications and the standalone FMS trigger file applications.
   The source is in the directory $FMSSRC="${FMSROOT}/StRoot/StPSUTools". 
   To compile standalone, go to $FMSSRC and run "make".
   To compile for StRoot go to ${FMSROOT}/fmsCode/  and run runcons.csh

2) Protection of PSU globals. 
     To be good neighbors in StRoot/StPSUTools, we needed to have the global symbols invisible to the rest of the StEvent code.  
     In the PSU code, found under StRootStPSUTools all the PSU symbols are under the namespace:

     using namespace PSUGlobals;
     and are referred to from outside by PSUGlobals::whatever.
     It is the same  StRoot/StPSUTools/ directory of PSU software that can be used for both stand alone and StRoot applications.

3) We have now the ability to choose between bringing in mapping and callibration from the database or from the external files
     that live in $FMSTXT.  (more on that later)

An example of using the StRoot to run the FMS code ::::

Instructions for running from fmsCode
tcsh
cd root12fms
source SetFMSEnv
cd fmsCode
runcons.csh
 
#to run the psu style example
root4star -b -q RunF5.C
cd $FMSROOT
RunOne fmsCode/OFile.root 92 ./
root Output.root
>TwoTr->Draw("M12","abs(M12-1.)<1.&&N12==2&&abs(E12-50)<20&&abs(Eta-3.7)<.2")
>...
 
 
#to run in the StRoot style
 
cd $FMSROOT/runcons
root4star -b -q RunF6.C