class EmcDynamicData

Parses configuration file and creates storage arrays for only active channels and references data.

Public Methods

[more] EmcDynamicData( int& status, char* fileName, bool GetRaw=false, bool Asic24ch=true, bool EmcMapStyle=true)
Class constructor: parses configuration file and creates all arrays for data and addresses storage.
[more]const SuperModule* getSmMap()
Returns pointer to an array of SuperModule structures.
[more]bool getMapStyle()
Returns mapping style: true means EMCal style (towers number), false means FEM style (channel numbers).
[more]bool getASICStyle()
Returns output style: true means only those channels that are connected to towers are readout, false means that all 32 channels of each ASIC board will be readout
[more]int getnSM()
Returns number of SuperModules.
[more]const SuperModule* getSMMap()
Returns pointer to FEM configuration MAP
[more]int* getEmcMap()
Returns pointer to Data map.
[more]float* getEmcHG()
Returns pointer to High Gain EMCal data.
[more]float* getEmcLG()
Returns pointer to Low Gain EMCal data.
[more]float* getEmcTAC()
Returns pointer to EMCal Timing data.
[more]int getEmcSize()
Returns data arrays size.
[more]float** getEmcRaw()
Gives pointer to raw data structure array. If GetRaw=false then returns NULL.
[more]EmcData* getEmcData()
Returns EmcData structure that contains all pointers to data arrays.
[more]const Reference* getRefMap()
Returns pointer to array of Reference structures.
[more]int getRefSize()
Returns the size of Reference structures array.
[more]float* getRefHG()
Returns pointer to references High Gain data.
[more]float* getRefLG()
Returns pointer to references Low Gain data.
[more]float* getRefTAC()
Returns pointer to references Timing data.
[more]float** getRefRaw()
Returns pointer to references raw data.
[more]EmcData* getRefData()
Returns references data structure that contains all pointers to references data arrays.
[more]virtual ~EmcDynamicData()
Destructor frees all memory allocated for data and addresses.


Documentation

Parses configuration file and creates storage arrays for only active channels and references data. =============================================================================== | The purpose of EmcDynamicData class is: | | 1. to Parse script file describing EMCalchannels and references connections | | to FEMs; | | 2. to create storage arrays for only active channels and references data; | | 3. to create routers that explain Event Iterating routines/classes what | | channels should be read out and where these data should be stored. | | Actually router creates "connections" between electronics channels and | | elements of data arrays. | | | | To make your own EmcDynamicData object, just do: | |_____________________________________________________________________________| | int status; | | EmcDynamicData myobject(status,ConfigFileName);//constructor does all | | if(status) exit(1); //non-zero status means there were script errors | | int* dataMap=myobject.getEmcMap(); // get list of detector cells | | int nchannel=myobject.getEmcSize(); // get size of data arrays | | float* myHighGain=myobject.getEmcHG();//access to EMCal HighGain pre-post | |// the same for getEmcLG, getEmcTAC. | |_____________________________________________________________________________| | Boolean 'false' as a 2-nd parameter to constructor means that data from FEM | | 6x32=192 instead of 6x24=144. It means that you will get data not from | | towers only, but also from channels that are connected to different ASIC | | bias voltage levels. If you care about tower signals only, use 'true' | | instead of 'false' | |_____________________________________________________________________________| | 3-d parameter in the constructor determins if in addition to amplitudes | | you would like to get array with just raw data: tac, hipost,lopost, hipre, | | lopre. If you set 'true' then get pointer to 2D raw data aray[5][datasize] | | using float** EmcDynamicData::getEmcRaw() | |_____________________________________________________________________________| | Last parameter in the constructor determins data mapping style. 'True" | | means that DataMap array will store absolute FEM addresses: | | address=absFEM*192+ch, where absFEM - FEM (0-171), ch -channel (0-191). | |'False' means EMCal towers mapping style: address=tower (0-24767). ||_____________________________________________________________________________| | Slang in this program: | | abs position-means position in the EMCal detector. For towers it is 0-24767,| | for FEM or reference - this is a position of the supermodule (12x12 | | towers) in EMCal : 0-171. EMCal is treated as 8 sectors, PbSc1, ...,PbSc6, | | PgGl1,PbGl2. In this program names of corresponding sectors are: W0,W1,W2, | | W3,E2,E3,E0,E1. Reason - Edouard asked to push PbGl as far as possible :) | =============================================================================
o EmcDynamicData( int& status, char* fileName, bool GetRaw=false, bool Asic24ch=true, bool EmcMapStyle=true)
Class constructor: parses configuration file and creates all arrays for data and addresses storage. int& status - gives result of object creation. status!=0 means there were error(s) found in configuration file. char* fileName - name of a configuration file. bool GetRaw - if true array for raw data storage is created and you can get a pointer to this data. bool Asic24ch - if true only FEM channels connected to EMC towers will be read out (24 for each ASIC card), if false all FEM channels (32 for each ASIC card) will be read out. Default is true. bool EmcMapStyle - if true the data map address corresponds to PHENIX tower numeration schematic, if false then it is FEM channel number.

oconst SuperModule* getSmMap()
Returns pointer to an array of SuperModule structures.

obool getMapStyle()
Returns mapping style: true means EMCal style (towers number), false means FEM style (channel numbers).

obool getASICStyle()
Returns output style: true means only those channels that are connected to towers are readout, false means that all 32 channels of each ASIC board will be readout

oint getnSM()
Returns number of SuperModules.

oconst SuperModule* getSMMap()
Returns pointer to FEM configuration MAP

oint* getEmcMap()
Returns pointer to Data map.

ofloat* getEmcHG()
Returns pointer to High Gain EMCal data.

ofloat* getEmcLG()
Returns pointer to Low Gain EMCal data.

ofloat* getEmcTAC()
Returns pointer to EMCal Timing data.

oint getEmcSize()
Returns data arrays size.

ofloat** getEmcRaw()
Gives pointer to raw data structure array. If GetRaw=false then returns NULL.

oEmcData* getEmcData()
Returns EmcData structure that contains all pointers to data arrays.

oconst Reference* getRefMap()
Returns pointer to array of Reference structures.

oint getRefSize()
Returns the size of Reference structures array.

ofloat* getRefHG()
Returns pointer to references High Gain data.

ofloat* getRefLG()
Returns pointer to references Low Gain data.

ofloat* getRefTAC()
Returns pointer to references Timing data.

ofloat** getRefRaw()
Returns pointer to references raw data.

oEmcData* getRefData()
Returns references data structure that contains all pointers to references data arrays.

ovirtual ~EmcDynamicData()
Destructor frees all memory allocated for data and addresses.


This class has no child classes.

Alphabetic index HTML hierarchy of classes or Java



This page was generated with the help of DOC++.