19 #include "TProfile2D.h"
53 Int_t
GetDetectorInfo(std::vector< std::vector< QwDetectorInfo > > & detector_info){
return 0;};
59 Int_t
ProcessEvBuffer(
const UInt_t roc_id,
const UInt_t bank_id, UInt_t* buffer, UInt_t num_words);
104 std::vector< std::vector< std::pair< EQwModuleType, Int_t> > >
fModulePtrs;
107 std::vector< std::vector<QwPMT_Channel> >
fPMTs;
109 std::vector<QwSIS3801D24_Channel>
fSCAs;
113 void FillRawWord(Int_t bank_index, Int_t slot_num, Int_t chan, UInt_t data);
Double_t fbpm_3h09b_intercept
Int_t LoadEventCuts(TString filename)
Optional event cut file.
Double_t fChannel_Offset_Y
Bool_t IsSlotRegistered(Int_t bank_index, Int_t slot_num) const
std::map< TString, size_t > fSCAs_map
Double_t fbpm_3h09b_slope
Bool_t CheckRunningAverages(Bool_t)
EQwModuleType RegisterModuleType(TString moduletype)
Int_t LoadChannelMap(TString mapfile)
Mandatory map file definition.
void FillDB(QwDatabase *db, TString type)
void ConstructBranchAndVector(TTree *tree, TString &prefix, std::vector< Double_t > &values)
Construct the branch and tree vector.
Int_t RegisterSubbank(const UInt_t bank_id)
A database interface class.
Int_t LinkChannelToSignal(const UInt_t chan, const TString &name)
size_t fCurrentBankIndex
Name of this subsystem (the region).
std::vector< QwSIS3801D24_Channel > fSCAs
Double_t fPositionOffsetX
Int_t LoadInputParameters(TString parameterfile)
Mandatory parameter file definition.
void ProcessOptions(QwOptions &options)
Process the command line options.
Bool_t ApplySingleEventCuts()
Double_t fbpm_3h07a_slope
void GetHitList(QwHitContainer &grandHitContainer)
Get the hit list.
Double_t fChannel_Offset_X
void FillHistograms()
Fill the histograms for this subsystem.
virtual void ConstructHistograms()
Construct the histograms for this subsystem.
QwRaster()
Private default constructor (not implemented, will throw linker error on use)
virtual ~QwRaster()
Virtual destructor.
Int_t FindSignalIndex(const EQwModuleType modtype, const TString &name) const
Double_t fbpm_3h07a_pos_y
Double_t fCal_Factor_QDC_X
void FillRawWord(Int_t bank_index, Int_t slot_num, Int_t chan, UInt_t data)
static const UInt_t kMaxNumberOfChannelsPerModule
Int_t RegisterSlotNumber(const UInt_t slot_id)
Int_t RegisterROCNumber(const UInt_t roc_id)
Double_t fbpm_3h07a_pos_x
static const UInt_t kMaxNumberOfModulesPerROC
Double_t fbpm_3h09b_pos_y
Double_t fPositionOffsetY
Double_t fbpm_3h09b_pos_x
std::vector< std::vector< Int_t > > fModuleIndex
Double_t fbpm_3h07a_intercept
void ClearAllBankRegistrations()
virtual void ConstructBranchAndVector(TTree *tree, TString &prefix, std::vector< Double_t > &values)=0
Construct the branch and tree vector.
Int_t GetModuleIndex(size_t bank_index, size_t slot_num) const
void ReportConfiguration()
std::vector< std::vector< std::pair< EQwModuleType, Int_t > > > fModulePtrs
Int_t ProcessEvBuffer(const UInt_t roc_id, const UInt_t bank_id, UInt_t *buffer, UInt_t num_words)
TODO: The non-event-type-aware ProcessEvBuffer routine should be replaced with the event-type-aware v...
void FillTreeVector(std::vector< Double_t > &values) const
Fill the tree vector.
Int_t ProcessConfigurationBuffer(const UInt_t roc_id, const UInt_t bank_id, UInt_t *buffer, UInt_t num_words)
void InitializeChannel(TString name, TString datatosave)
Double_t fCal_Factor_QDC_Y
std::vector< Int_t > fSCAs_offset
EQwModuleType fCurrentType
Int_t GetDetectorInfo(std::vector< std::vector< QwDetectorInfo > > &detector_info)
std::vector< std::vector< QwPMT_Channel > > fPMTs
std::vector< EQwModuleType > fModuleTypes
Module index, indexed by bank_index and slot_number.
void PrintErrorCounters() const