StRoot
1
|
#include <StBFChain.h>
Public Member Functions | |
StBFChain (const char *name="bfc", const Bool_t UseOwnHeader=kFALSE) | |
void | Setup (Int_t mode=1) |
virtual | ~StBFChain () |
Destructor. Call Finish() . See this method for detail on what is cleaned. | |
virtual Int_t | Make (int number) |
virtual Int_t | Make () |
virtual Int_t | Load () |
Routine handling library loading depending on chain options. | |
virtual Int_t | Instantiate () |
Maker-instantiation handler. More... | |
virtual Int_t | Init () |
virtual Int_t | AddAB (const Char_t *after="", const StMaker *maker=0, const Int_t Opt=1) |
virtual Int_t | AddAfter (const Char_t *after, const StMaker *maker) |
virtual Int_t | AddBefore (const Char_t *before, const StMaker *maker) |
void | SetFlags (const Char_t *Chain="gstar tfs") |
Scan all flags, check if they are correct, manipulate the comment if necessary. More... | |
void | Set_IO_Files (const Char_t *infile=0, const Char_t *outfile=0) |
void | SetInputFile (const Char_t *infile=0) |
void | SetOutputFile (const Char_t *outfile=0) |
Takes care of output file name (extension) | |
void | SetTFile (TFile *tf) |
TFile * | GetTFile () const |
virtual Int_t | kOpt (const TString *Tag, Bool_t Check=kTRUE) const |
Check option if defined. More... | |
virtual Int_t | kOpt (const Char_t *Tag, Bool_t Check=kTRUE) const |
Check option if defined (Char_t argument interface) | |
virtual void | SetDbOptions (StMaker *db=0) |
Treats the DbV options used for database timestamp. More... | |
virtual void | SetGeantOptions (StMaker *geant=0) |
Handles all geant options. More... | |
virtual void | SetTreeOptions () |
Creates output-tree branches. | |
virtual void | SetOption (const Int_t k, const Char_t *chain="Chain") |
Enable/disable valid command line options. | |
virtual void | SetOption (const Char_t *Opt, const Char_t *chain="Chain") |
virtual void | SetOption (const TString *Opt, const Char_t *chain="Chain") |
virtual void | SetOptions (const Char_t *Opt, const Char_t *chain="Chain") |
virtual void | SetOptionOff (const Char_t *Opt, const Char_t *chain="Chain") |
virtual void | SetOptionOff (const TString *Opt, const Char_t *chain="Chain") |
virtual Int_t | Finish () |
Really the destructor (close files, delete pointers etc ...) | |
virtual Option_t * | GetOption () const |
virtual Bool_t | GetOption (const Int_t k) const |
Returns chain-option state (on/off) | |
virtual Bool_t | GetOption (const TString *Opt, Bool_t Check=kTRUE) const |
virtual Bool_t | GetOption (const Char_t *Opt, Bool_t Check=kTRUE) const |
virtual Char_t * | GetOptionString (const Char_t *) |
Returns the comment string associated to an option. More... | |
virtual const TString & | GetFileIn () const |
virtual const TString & | GetFileOut () const |
TString | GetGeometry () const |
virtual Long_t | ProcessLine (const char *line) |
virtual const char * | GetCVS () const |
Public Member Functions inherited from StChain | |
StChain (const char *name="bfcChain", const Bool_t UseOwnHeader=kFALSE) | |
virtual void | Clear (Option_t *option="") |
User defined functions. | |
virtual Int_t | IsChain () const |
virtual Int_t | MakeEvent () |
virtual Int_t | EventLoop (Int_t jBeg, Int_t jEnd, StMaker *outMk=0) |
virtual Int_t | EventLoop (Int_t jEnd=1000000, StMaker *outMk=0) |
Int_t | GetVersion () const |
Int_t | GetVersionDate () const |
Int_t | GetNTotal () const |
Int_t | GetNFailed () const |
void | SetChainOpt (StChainOpt *opt) |
virtual const StChainOpt * | GetChainOpt () const |
Public Member Functions inherited from StMaker | |
StMaker (const char *name="", const char *dummy=0) | |
Constructor & Destructor. | |
virtual Int_t | InitRun (Int_t runumber) |
virtual void | StartMaker () |
virtual Int_t | IMake (Int_t number) |
virtual void | EndMaker (Int_t ierr) |
virtual Int_t | FinishRun (Int_t oldrunumber) |
virtual void | FatalErr (Int_t Ierr, const char *Com) |
virtual void | PrintInfo () |
virtual void | NotifyMe (const char *, const void *) |
virtual void | AddMaker (StMaker *mk) |
virtual void | MakeDoc (const TString &, const TString &, Bool_t) |
virtual void | AddData (TDataSet *data, const char *dir=".data") |
User methods. | |
virtual TDataSet * | AddObj (TObject *obj, const char *dir, int owner=1) |
virtual TDataSet * | ToWhiteBoard (const char *name, void *dat) |
virtual TDataSet * | ToWhiteBoard (const char *name, void *dat, void *del) |
virtual TDataSet * | ToWhiteBoard (const char *name, TObject *dat, Int_t owner) |
virtual TDataSet * | ToWhiteConst (const char *name, TObject *dat) |
virtual TDataSet * | ToWhiteConst (const char *name, void *dat) |
virtual TDataSet * | WhiteBoard (const char *name, void *v=0) const |
virtual Int_t | Skip (Int_t nskip) |
virtual void | AddConst (TDataSet *data=0) |
virtual void | AddHist (TH1 *h, const char *dir=0) |
virtual void | AddGarb (TDataSet *data=0) |
virtual void | AddRunco (TDataSet *data=0) |
virtual void | AddRunco (Double_t par, const char *name, const char *comment) |
void | AddRunCont (TDataSet *data=0) |
virtual TList * | GetHistList () const |
virtual TH1 * | GetHist (const char *histName) const |
virtual StMaker * | cd () |
virtual StMaker * | Cd () |
virtual Int_t | GetNumber () const |
STAR methods. | |
virtual void | SetNumber (Int_t number) |
virtual StMaker * | GetParentChain () const |
virtual Int_t | GetIventNumber () const |
Returns the current event number. | |
virtual void | SetIventNumber (Int_t iv) |
virtual Int_t | GetEventNumber () const |
virtual Int_t | GetRunNumber () const |
Returns the current RunNumber. | |
virtual const TDatime & | GetDateTime () const |
virtual const TDatime & | GetDBTime () const |
virtual void | SetDateTime (Int_t idat, Int_t itim) |
virtual StEvtHddr * | GetEvtHddr () const |
virtual Int_t | GetDate () const |
virtual Int_t | GetTime () const |
virtual const char * | GetEventType () const |
virtual TDataSet * | GetData (const char *name, const char *dir=".data") const |
virtual TDataSet * | GetData () const |
virtual TDataSet * | GetConst () const |
virtual TDataSet * | GetDataSet (const char *logInput) const |
virtual TDataSet * | DataSet (const char *logInput) const |
virtual TDataSet * | GetInputDS (const char *logInput) const |
virtual TDataSet * | GetDataBase (const char *logInput, const TDatime *td=0) |
virtual TDataSet * | GetInputDB (const char *logInput) |
virtual Int_t | GetDebug () const |
virtual Int_t | Debug () const |
virtual Int_t | GetMakeReturn () const |
virtual TList * | Histograms () const |
virtual TString | GetAlias (const char *log, const char *dir=".aliases") const |
virtual TString | GetInput (const char *log) const |
virtual TString | GetOutput (const char *log) const |
virtual TList * | GetMakeList () const |
virtual StMaker * | GetParentMaker () const |
virtual StMaker * | GetMaker (const char *mkname) |
virtual StMaker * | GetMakerInheritsFrom (const char *mktype) const |
virtual Bool_t | IsActive () |
virtual StMaker * | Maker (const char *mkname) |
virtual void | SetBIT (EMakerStatus k) |
Maker Status Bits. | |
virtual void | ResetBIT (EMakerStatus k) |
virtual Bool_t | TestBIT (EMakerStatus k) |
virtual void | SetActive (Bool_t k=kTRUE) |
Setters for flags and switches. | |
virtual void | SetDebug (Int_t l=1) |
virtual void | SetDEBUG (Int_t l=1) |
virtual void | SetFlavor (const char *flav, const char *tabname) |
virtual void | SetMakeReturn (Int_t ret) |
virtual void | SetAlias (const char *log, const char *act, const char *dir=".aliases") |
virtual void | AddAlias (const char *log, const char *act, const char *dir=".aliases") |
virtual void | SetInput (const char *log, const char *act) |
virtual void | SetOutput (const char *log, const char *act) |
virtual void | SetOutput (const char *log, TDataSet *ds) |
virtual void | SetOutput (TDataSet *ds) |
virtual void | SetOutputAll (TDataSet *ds, Int_t level=1) |
virtual void | SetMode (Int_t mode=0) |
virtual void | SetNotify (const char *about, StMaker *mk) |
virtual Int_t | GetMode () |
virtual Int_t | GetDebug () |
virtual void | NotifyEm (const char *about, const void *ptr) |
virtual Double_t | RealTime () |
virtual Double_t | CpuTime () |
virtual void | StartTimer (Bool_t reset=kFALSE) |
virtual void | StopTimer () |
virtual void | PrintTimer (Option_t *option="") |
virtual void | PrintTotalTime () |
virtual const char * | GetName () const |
special overload | |
TObject * | GetDirObj (const char *dir) const |
void | SetDirObj (TObject *obj, const char *dir) |
Int_t | SetAttr (const char *key, const char *val, const char *to=".") |
Int_t | SetAttr (const char *key, Int_t val, const char *to=".") |
Int_t | SetAttr (const char *key, UInt_t val, const char *to=".") |
Int_t | SetAttr (const char *key, Double_t val, const char *to=".") |
Int_t | SetAttr (const StMaker *mk) |
Int_t | RemAttr (const char *key, const char *to=".") |
const TAttr * | GetAttr () const |
Int_t | IAttr (const char *key) const |
UInt_t | UAttr (const char *key) const |
Double_t | DAttr (const char *key) const |
const char * | SAttr (const char *key) const |
void | PrintAttr () const |
Public Member Functions inherited from TDataSet | |
TDataSet (const char *name="", TDataSet *parent=0, Bool_t arrayFlag=kFALSE) | |
TDataSet (const TDataSet &src, EDataSetPass iopt=kAll) | |
TDataSet (TNode &src) | |
This copy ctor has been depricated (left for thwe sake of the backweard compatibility) | |
virtual | ~TDataSet () |
std::cout << "Default destructor for " << GetName() << " - " << GetTitle() << std::endl; | |
virtual void | Add (TDataSet *dataset) |
virtual void | AddAt (TDataSet *dataset, Int_t idx=0) |
virtual void | AddAtAndExpand (TDataSet *dataset, Int_t idx=0) |
virtual void | AddFirst (TDataSet *dataset) |
Add TDataSet object at the beginning of the dataset list of this dataset. | |
virtual void | AddLast (TDataSet *dataset) |
Add TDataSet object at the end of the dataset list of this dataset. | |
TDataSet * | At (Int_t idx) const |
virtual void | Browse (TBrowser *b) |
Browse this dataset (called by TBrowser). | |
virtual TObject * | Clone (const char *newname="") const |
the custom implementation fo the TObject::Clone | |
virtual void | Delete (Option_t *opt="") |
virtual TDataSet * | Find (const char *path) const |
virtual TDataSet * | FindByName (const char *name, const char *path="", Option_t *opt="") const |
virtual TDataSet * | FindByPath (const char *path) const |
Aliase for TDataSet::Find(const Char_t *path) method. | |
virtual TDataSet * | FindByTitle (const char *title, const char *path="", Option_t *opt="") const |
TObject * | FindObject (const char *name) const |
TObject * | FindObject (const TObject *o) const |
virtual TDataSet * | First () const |
Return the first object in the list. Returns 0 when list is empty. | |
TObjArray * | GetObjArray () const |
virtual TSeqCollection * | GetCollection () const |
TList * | GetList () const |
virtual Int_t | GetListSize () const |
TObject * | GetMother () const |
virtual TObject * | GetObject () const |
The depricated method (left here for the sake of the backward compatibility) | |
virtual TDataSet * | GetParent () const |
virtual Long_t | HasData () const |
virtual TDataSet * | Instance () const |
virtual TString | Path () const |
return the full path of this data set | |
virtual EDataSetPass | Pass (EDataSetPass(*callback)(TDataSet *), Int_t depth=0) |
virtual EDataSetPass | Pass (EDataSetPass(*callback)(TDataSet *, void *), void *user, Int_t depth=0) |
virtual void | PrintContents (Option_t *opt="") const |
virtual Int_t | Purge (Option_t *opt="") |
virtual void | Remove (TDataSet *set) |
Remiove the "set" from this TDataSet. | |
virtual TDataSet * | RemoveAt (Int_t idx) |
virtual void | SetMother (TDataSet *parent=0) |
virtual void | SetObject (TObject *obj) |
The depricated method (left here for the sake of the backward compatibility) | |
virtual void | SetParent (TDataSet *parent=0) |
virtual void | SetWrite () |
virtual void | Shunt (TDataSet *newParent=0) |
virtual void | Sort () |
Sort recursively all members of the TDataSet with TList::Sort method. | |
virtual Bool_t | IsEmpty () const |
return kTRUE if the "internal" collection has no member | |
virtual Bool_t | IsFolder () const |
virtual Bool_t | IsMarked () const |
virtual Bool_t | IsThisDir (const char *dirname, int len=-1, int ignorecase=0) const |
virtual TDataSet * | Last () const |
Return the last object in the list. Returns 0 when list is empty. | |
virtual void | ls (Option_t *option="") const |
virtual void | ls (Int_t depth) const |
void | Mark () |
void | UnMark () |
void | MarkAll () |
Mark all members of this dataset. | |
void | UnMarkAll () |
UnMark all members of this dataset. | |
void | InvertAllMarks () |
Invert mark bit for all members of this dataset. | |
void | Mark (UInt_t flag, EBitOpt reset=kSet) |
virtual TDataSet * | Next () const |
virtual TDataSet * | Prev () const |
virtual void | Update () |
virtual void | Update (TDataSet *set, UInt_t opt=0) |
virtual Int_t | Write (const char *name=0, Int_t option=0, Int_t bufsize=0) |
virtual Int_t | Write (const char *name=0, Int_t option=0, Int_t bufsize=0) const |
Static Public Member Functions | |
static Int_t | ParseString (const TString &tChain, TObjArray &Opt, Bool_t Sort=kFALSE) |
Static Public Member Functions inherited from StMaker | |
static StMaker * | New (const char *classname, const char *name="", void *title=0) |
static StMaker * | GetTopChain () |
static StMaker * | GetChain () |
static StMaker * | GetFailedMaker () |
static StMaker * | GetMaker (const TDataSet *ds) |
Static functions. | |
static EDataSetPass | ClearDS (TDataSet *ds, void *user) |
static const char * | RetCodeAsString (Int_t kode) |
static Int_t | AliasDate (const char *alias) |
static Int_t | AliasTime (const char *alias) |
static const char * | AliasGeometry (const char *alias) |
static const DbAlias_t * | GetDbAliases () |
static void | SetTestMaker (StTestMaker *mk) |
static Int_t | Cleanup (TDataSet *&ds) |
static void | lsMakers (const StMaker *top) |
Static Public Member Functions inherited from TDataSet | |
static TDataSet * | GetMainSet () |
return pointer to the main dataset | |
static TDataSet * | instance () |
Additional Inherited Members | |
Public Types inherited from StMaker | |
enum | EDebugLevel { kNormal, kDebug } |
enum | { kSTAFCV_BAD, kSTAFCV_OK, kSTAFCV_ERR =2, kSTAFCV_FATAL =3 } |
enum | EMakerStatus { kInitBeg = 1, kInitEnd = 2, kMakeBeg = 3, kCleaBeg = 4, kFiniBeg = 5, kFiniEnd = 6, kActive = 7 } |
Public Types inherited from TDataSet | |
enum | EDataSetPass { kContinue, kPrune, kStop, kUp, kStruct, kAll, kRefs, kMarked } |
enum | ESetBits { kMark = BIT(22), kArray = BIT(20) } |
enum | EBitOpt { kSet = kTRUE, kReset = kFALSE } |
Public Attributes inherited from StMaker | |
enum StMaker:: { ... } | EModule_return_Status |
Protected Member Functions inherited from StMaker | |
StMessMgr * | GetLogger () const |
virtual TDataSet * | FindDataSet (const char *logInput, const StMaker *uppMk=0, const StMaker *dowMk=0) const |
Protected Member Functions inherited from TDataSet | |
virtual void | SetMother (TObject *mother) |
TDataSet (const char *name, const char *title) | |
void | AddMain (TDataSet *set) |
add data set to main data set | |
TDataSet * | GetRealParent () |
return real parent | |
void | MakeCollection () |
Create the internal container at once if any. | |
Static Protected Member Functions inherited from TDataSet | |
static EDataSetPass | SortIt (TDataSet *ds) |
static EDataSetPass | SortIt (TDataSet *ds, void *user) |
Protected Attributes inherited from StChain | |
StEvtHddr * | m_EvtHddr |
StChainOpt * | mChainOpt |
Protected Attributes inherited from StMaker | |
TDataSet * | m_DataSet |
TDataSet * | m_ConstSet |
TDataSet * | m_GarbSet |
TDataSet * | m_Inputs |
TDataSet * | m_Ouputs |
list of logInput:ActualInput | |
TDataSet * | m_Runco |
list of logOuput:ActualOuput | |
TList * | m_Histograms |
Run Control parameters. | |
Int_t | fTallyMaker [kStFatal+1] |
counters | |
Int_t | m_Mode |
counters | |
Int_t | m_Number |
Integer mode of maker. | |
Int_t | m_LastRun |
Serial event number. | |
Int_t | m_DebugLevel |
Last Run number. | |
Int_t | m_MakeReturn |
Debug level. | |
TStopwatch | m_Timer |
Make() return flag. | |
StMemStat * | fMemStatMake |
Timer object. | |
StMemStat * | fMemStatClear |
StMemStat for Make. | |
Int_t | fStatus |
StMemStat for Clear. | |
StMessMgr * | fLogger |
Maker status. | |
StTurnLogger * | fLoggerHold |
Protected Attributes inherited from TDataSet | |
TDataSet * | fParent |
TSeqCollection * | fList |
Static Protected Attributes inherited from StMaker | |
static StMaker * | fgTopChain = 0 |
list of Histograms | |
static StMaker * | fgStChain = 0 |
pointer to top StChain | |
static StMaker * | fgFailedMaker = 0 |
current pointer to StChain | |
static StTestMaker * | fgTestMaker = 0 |
current pointer to failed maker | |
static Int_t | fgTallyMaker [kStFatal+1] = {0,0,0,0,0} |
Static Protected Attributes inherited from TDataSet | |
static TDataSet * | fgMainSet = &mainSet |
:
Class to control "BFC" chain
This class :
Definition at line 32 of file StBFChain.h.
|
virtual |
Returns the comment string associated to an option.
Any option passed a bla=XX is reshaped as follow ...
Note : If the requested option is not part of the global BFC[] array, the kOpt() method is going to scream at you but it will still work. You can ask for that option to be added to the chain official options later whenever your code debugging is done. In other words, this method allows you to pass ANY options not officially declared and use it as test/work-around to pass any parameters to your maker.
However, if the parameters are to be used in production, we DO request/require that they are declared as a valid option.
Definition at line 1475 of file StBFChain.cxx.
References kOpt().
|
virtual |
Maker-instantiation handler.
This routine contains it all (make instantiation that is), from calibration precedence to parameter setting depending on option etc ... Other thing done here which deserves attention
If a maker is added along with some flag options, this is the place to implement the switches.
Definition at line 214 of file StBFChain.cxx.
References StMaker::GetName(), kOpt(), kStErr, kStOk, StMaker::SetActive(), SetDbOptions(), SetGeantOptions(), StIOInterFace::SetIOMode(), and SetTreeOptions().
|
virtual |
Check option if defined.
This method checks if the options are valid by comparing them to the list of declared options. This is called for each option passed as argument. The real sorting of all options is done in SetFlags().
Definition at line 1140 of file StBFChain.cxx.
Referenced by GetOptionString(), Instantiate(), kOpt(), and Setup().
|
inlinevirtual |
The Make() method is the one responsible for calling the maker's InitRun(). Note that that InitRun() is called for real data and if both of the following are true
This is the ONLY place calling the InitRun() routine.
check privilege to skip event
Reimplemented from StChain.
Definition at line 72 of file StBFChain.h.
References StChain::Make().
|
virtual |
Treats the DbV options used for database timestamp.
Re-scan all options and search for dbv options. This method also sorts out the string-based database timestamp for reconstruction. Those have to be in phase with the geant geometry (see SetGeantOptions()) if simulation is being reconstructed.
The order matters since a later option would overwrite an earlier one. The mechanism introduced for a dynamic (i.e. not pre-defined) timestamp is that it will be used ONLY if there are no other timestamp options. Be aware of this precedence ...
Definition at line 1782 of file StBFChain.cxx.
References StMaker::GetName().
Referenced by Instantiate().
void StBFChain::SetFlags | ( | const Char_t * | chainOpts = "gstar tfs" | ) |
Scan all flags, check if they are correct, manipulate the comment if necessary.
This method checks if the options passed are correct and/or sorts out the extraneous information passed through the comment if applies. Two special flags exists, that is, dbv and sdt for database interraction ...
dbv
tag is used to setup the end-time for entries (time after which any database insertions will be ignored). This is used to provide a mechanism by which we can run production with a stable set of calibration constant and still allow for development value insertion to get in.sdt
tag is used to setup the database look-up time stamp that is, on which date to look at the database. This is usefull if we want to decouple Geant geometry and database calibration constants. This may also be used to get database values when you do not run over a raw data file.The GOptXXXvvvvvv
options are used to pass an flexible option value vvvvvv
to makers in the chain matching the name XXX
. The three letter acronym will be following the detector sub-systems naming. If a maker uses such convenience, the basic rule applies:
vvvvvv
to a private structure with explicit naming of each switchesvvvvvv
must be clearly added to the documentation Definition at line 1513 of file StBFChain.cxx.
References TTable::AddAt(), StMaker::GetName(), SetOption(), and Setup().
|
virtual |
Handles all geant options.
This method sets the Geant options that is the Geometry loading part. Depends on St_geant_Maker instantiated in the Instantiate() method. Please, change SetDbOptions()
Definition at line 1737 of file StBFChain.cxx.
Referenced by Instantiate().
void StBFChain::Setup | ( | Int_t | mode = 1 | ) |
This method can be called with mode 1 or 2 to enable chain setup 1 or chain setup 2.
Note: This constructor now accepts a second argument for the chain name. Embedding scripts were modified accordingly.
This was primarily set to make possible the transition between the regular chain and the ITTF chain options.
Definition at line 59 of file StBFChain.cxx.
References TTable::AddAt(), TTable::GetNRows(), and kOpt().
Referenced by SetFlags().