StRoot
1
|
#include <StEEmcAssociationMaker.h>
Public Member Functions | |
StEEmcAssociationMaker (const char *name="EEmcAssoc") | |
Int_t | Init () |
Int_t | Make () |
Int_t | Finish () |
void | Clear (const char *) |
void | printMaps () |
multiEEmcTrackCluster * | getTrackClusterMap (Int_t i) |
returns multimap for association betwwen MC tracks and clusters | |
multiEEmcTrackCluster * | getTrackClusterMap (const char *) |
returns multimap for association betwwen MC tracks and clusters | |
multiEEmcClusterTrack * | getClusterTrackMap (Int_t i) |
returns multimap for association betwwen clusters and MC tracks | |
multiEEmcClusterTrack * | getClusterTrackMap (const char *) |
returns multimap for association betwwen clusters and MC tracks | |
multiEEmcTrackPoint * | getTrackPointMap () |
returns multimap for association betwwen MC tracks and points | |
multiEEmcPointTrack * | getPointTrackMap () |
returns multimap for association betwwen points and MC tracks | |
Int_t | getDetNum (const char *) |
returns detector number for each EMC sub detector | |
void | setPrint (Bool_t a) |
void | printHits (StEvent *) |
Set print log. More... | |
Public Member Functions inherited from StMaker | |
StMaker (const char *name="", const char *dummy=0) | |
Constructor & Destructor. | |
virtual Int_t | IsChain () const |
virtual void | Clear (Option_t *option="") |
User defined functions. | |
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 const StChainOpt * | GetChainOpt () const |
virtual TFile * | GetTFile () const |
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) |
virtual const char * | GetCVS () const |
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 |
Protected Attributes | |
Bool_t | mPrint |
multiEEmcTrackCluster * | mTrackCluster [NDETECTORS] |
multiEEmcClusterTrack * | mClusterTrack [NDETECTORS] |
multiEEmcTrackPoint * | mTrackPoint |
multiEEmcPointTrack * | mPointTrack |
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 |
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 } |
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 () |
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) |
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 |
Modified from StEmcAssociationMaker of Marcia Maria de Moura/Alexandre Suaide Wei-Ming Zhang KSU First version - 03/15/05
This is the basic EEMC association Maker. It has two methods of association:
This maker takes tracks in StMcEvent object and EMC(EEMC) clusters in StEvent object and compare their hits to check if they match. This is done for the EMC Tower (eemc),Pre-Shower(eprs), U and V layers of Shower Max (esmdu and esmdv) detectors.
It builds the following association matrices:
- Simple Association (association): matrix elements are 0 for negative association and 1 for positive association. - Track Energy Fraction (trackFraction): matrix elements are fraction of track energy in a cluster. - Cluster Energy Fraction (clusterFraction): matrix elements are fraction of cluster energy from a track.
The elements of the cluster energy fraction matrix are normalized. Initially, the energy information of former MC hits to be in a cluster is the deposited energy. Before making the clusters, the deposited energy is converted to ADC signal by StEEmcSimulatorMaker and then is converted to energy by the method adcToEnergy() of StEEmcMixerMaker. The elements of the cluster energy fraction matrix are the ratio of the summed hit energy over the track hits that are associated to that cluster to the cluster energy. The track hits energies that are taken in StEEmcAssociationMaker are obtained converting directilly the deposited energy into energy by the method StEEmcAssociationMaker::dEToEnergy(). (de = Energy for now. The relation will be replaced by a correct function later) So the energy associated to a track hit by each method is a little bit different leading to a normalization of the elemtents of the cluster energy fraction matrix.
The Maker also does association for EMC points. It compares the tracks hits to the clusters hits from the clusters of the 4 detectors that composes an EEM(EEMC) point (particle). It builds a simple association matrix are related to the type of EMC(EEMC) cluster that compose the point and is associated to a MC track.The matrix element is a bit map in which:
- bit 0 = 1 - Tower cluster is associated in that point - bit 1 = 1 - Pre shower is associated - bit 2 = 1 - SMD-U is associated - bit 3 = 1 - SMD-V is associated
In order to make the association more powerfull and similar to TPC association, a set of multimaps were created. Multimaps are:
- multiEEmcTrackCluster - correlates MC tracks with clusters for each EEMC detecor - multiEEmcClusterTrack - correlates clusters with MC tracks - multiEEmcTrackPoint - correlates MC tracks with EMC(EEMC) points - multiEEmcPointTrack - correlates points with MC tracks
The use of these multimaps are similar to the TPC multimaps.
Each multimap correlates a MC track, EMC(EEMC) cluster or point to an EEMC association object. There are two types of association objects
- StEEmcClusterAssociation - used to associate MC tracks and EMC(EEMC) clusters - StEEmcPointAssociation - used to associate MC tracks and EMC(EEMC) points
See description for these classes for more details
Definition at line 204 of file StEEmcAssociationMaker.h.
|
virtual |
Terminate a run. Place to make operations on histograms, normalization,etc.
Reimplemented from StMaker.
Definition at line 301 of file StEEmcAssociationMaker.cxx.
References kStOK.
|
virtual |
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 StMaker.
Definition at line 107 of file StEEmcAssociationMaker.cxx.
References kStOK, kStWarn, and printHits().
void StEEmcAssociationMaker::printHits | ( | StEvent * | event | ) |
Set print log.
Prints all EEMC hits in the StEvent object
Definition at line 425 of file StEEmcAssociationMaker.cxx.
Referenced by Make().