McpTarget.h
00001 00002 00003 00004 00005 00006 #ifndef MCPTARGET 00007 #define MCPTARGET 00008 //ROOT includes 00009 #include "TGraph.h" 00010 #include "TFile.h" 00011 #include "TTree.h" 00012 00013 //rootTarget includes 00014 #include "Defs.h" 00015 #include "TargetData.h" 00016 #include "RawTargetData.h" 00017 00018 00019 00020 00021 class McpTarget 00022 { 00023 public: 00024 McpTarget(int offlineMode=0); 00025 ~McpTarget(); 00026 00027 void setSoftTrigMode(int flag) {fSoftTrigMode=flag;} 00028 void setDumpHexData(int value) {fDumpRawHexData=value;} 00029 void rawSendInt(unsigned int value); 00030 void rawReadInts(int numInts, unsigned short buffer[]); 00031 void generatePedestals(); 00032 void loadPedestal(); 00033 void loadDnlLookUpTable(); 00034 Int_t readEvent(); 00035 Int_t justReadBuffer(); 00036 void setExtTrigMode(Int_t mode); 00037 void useSyncUsb(Int_t flag); 00038 void sendSoftTrig(); 00039 void setPedRowCol(Int_t row, Int_t col); 00040 void enablePedestal(Int_t flag); 00041 void setWbias(UInt_t value); 00042 void setTrigThresh(UInt_t value); 00043 void setTermValue(Int_t f100, Int_t f1k, Int_t f10k); 00044 void setTrigPolarity(Int_t flag); 00045 // void getMemAddress(UInt_t memAddrSpace, UInt_t &rowLoc, UInt_t &colLoc, 00046 // UInt_t &pixLoc); 00047 00048 TGraph *getChannel(Int_t chanInd) 00049 { 00050 return getChannel(chanInd/NUM_CHANNELS, 00051 chanInd%NUM_CHANNELS); 00052 } 00053 TGraph *getChannel(Int_t chip, Int_t channel); 00054 00055 TargetData *getTargetData() {return fTargetDataPtr;} 00056 void fillVoltageArray(TargetData *targetDataPtr); 00057 void openOutputFile(char filename[]); 00058 void saveOutputFile(); 00059 00060 private: 00061 Int_t fOfflineMode; 00062 Int_t fOutputMode; 00063 Int_t fDumpRawHexData; 00064 Int_t fSoftTrigMode; 00065 Int_t fTermMode; 00066 Int_t fSampMode; 00067 Int_t fExtTrigMode; 00068 Int_t fEventNumber; 00069 Int_t fTargetEventNumber; 00070 Int_t fNumPedEvents; 00071 UShort_t fBuffer[BUFFERSIZE]; 00072 UShort_t fReadoutBuffer[BUFFERSIZE+2]; 00073 Int_t fPedSubbedBuffer[NUM_TARGETS][NUM_CHANNELS][SAMPLES_PER_COL]; 00074 Float_t fDnlLUT[4096]; 00075 Float_t fPedestalValues[NUM_TARGETS][NUM_CHANNELS][NUM_ROWS][NUM_COLS][SAMPLES_PER_COL]; 00076 Float_t fVoltBuffer[NUM_TARGETS][NUM_CHANNELS][SAMPLES_PER_COL]; 00077 Float_t fDNLLookUpTable[4096]; 00078 TargetData *fTargetDataPtr; 00079 RawTargetData *fRawTargetDataPtr; 00080 TFile *fTheOutputFile; 00081 TTree *fTheOutputTree; 00082 00083 }; 00084 00085 00086 #endif //MCPTARGET
Generated on Tue Nov 24 19:05:00 2009 for CREAM TEA -- MCP/TARGET Readout by
1.3.9.1