00001 #ifndef EMC_SMDREADER_HH
00002 #define EMC_SMDREADER_HH
00003 #include "StDaqLib/GENERIC/EventReader.hh"
00004 #include "StDaqLib/GENERIC/RecHeaderFormats.hh"
00005 #include "StDaqLib/GENERIC/swaps.hh"
00006 #include "EMC_Reader.hh"
00007 #include "StEmcDecoder.h"
00014 class EMC_SmdReader
00015 {
00016 public:
00017
00018 EMC_SmdReader(EventReader*er,Bank_EMCP *pEMCP);
00019 ~EMC_SmdReader();
00020 void Initialize();
00021 int ProcessBarrelSmd(const Bank_EMCP*);
00022 int FillBarrelSmd(Bank_SMDADCR*,int);
00023 Bank_EMCSECP* getBarrelSmdSection(const Bank_EMCP*,int);
00024 Bank_EMCRBP* getBarrelSmdFiber(Bank_EMCSECP*,int);
00025 Bank_SMDADCR* getSmdADC(Bank_EMCRBP*);
00026 void PrintSmdArray();
00027
00028 Bank_BSMDADCR& getBSMDADCR();
00029
00030 protected:
00031 Bank_EMCP* pBankEMCP;
00032 EventReader* ercpy;
00033 StEmcDecoder* decoder;
00034
00035 Bank_BSMDADCR mTheSmdAdcR;
00036 Bank_BSMDADCD mTheSmdAdcD;
00037 Bank_BSMDPEDR mTheSmdPedR;
00038 Bank_BSMDRMSR mTheSmdRMSR;
00039
00040 int mNSMD;
00041 };
00042 #endif