Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
daqchannelmap::DAQChannelMap Class Referenceabstract

#include "/cvmfs/nova-development.opensciencegrid.org/novasoft/releases/N20-10-28/DAQChannelMap/cxx/include/DAQChannelMap.h"

Inheritance diagram for daqchannelmap::DAQChannelMap:
daqchannelmap::FarDetDAQChannelMap daqchannelmap::NDOSDAQChannelMap daqchannelmap::NearDetDAQChannelMap daqchannelmap::TestBeamDAQChannelMap

Public Member Functions

 ~DAQChannelMap ()
 
dchan encodeDChan (int detID, diblock_t diblock, dcm_id_t dcm, feb_t feb, pixel_t pixel) const
 
lchan encodeLChan (int detId, plane_t plane, cell_t cell) const
 
int getDetector (uint32_t anychan) const
 
diblock_t getDiBlock (dchan daqchan) const
 Decode the diblock ID from a dchan. More...
 
dcm_id_t getDCM (dchan daqchan) const
 Decode the dcm ID from a dchan. More...
 
feb_t getFEB (dchan daqchan) const
 Decode the feb id from a dchan. More...
 
pixel_t getPixel (dchan daqchan) const
 Decode the pixel id from a dchan. More...
 
plane_t getPlane (lchan logicalchan) const
 Decode the plane number from an lchan. More...
 
cell_t getCell (lchan logicalchan) const
 Decode the cell number from an lchan. More...
 
virtual dchan encodeDChan (lchan logicalchan) const =0
 Convert a logical channel ID to a DAQ channel id. More...
 
virtual lchan encodeLChan (dchan daqchan) const =0
 Convert a DAQ channel ID to a logical channel id. More...
 
virtual DetView_TYPE getView (dchan daqchan) const =0
 Which view (X or Y) does this daq channel readout? More...
 
virtual block_t computeBlock (lchan logicalchan) const =0
 Which block is this lchan in? More...
 
virtual plane_t computePlaneInBlock (lchan logicalchan) const =0
 Which global plane in this lchan in? More...
 
virtual unsigned int computeModule (lchan logicalchan) const =0
 Which module in this lchan in? More...
 
virtual fiber_t computeFiberInModule (dchan daqchan) const =0
 Which fiber does this dchan readout? More...
 
virtual unsigned int getTotalNumberOfDiblocks () const =0
 How many diblocks does the detector have? More...
 
virtual unsigned int getNumberOfDCM (DiBlock_TYPE dbt) const =0
 How many DCMs does this diblock have? More...
 
virtual DiBlock_TYPE getDiBlockType (dchan chan) const =0
 What format is the diblock? Only relevant in NDOS. More...
 

Static Public Member Functions

static DAQChannelMapgetInstance (int detID)
 

Protected Member Functions

 DAQChannelMap ()
 DAQChannelMap is a singleton - keep the constructor private. More...
 

Detailed Description

Definition at line 7 of file DAQChannelMap.h.

Constructor & Destructor Documentation

DAQChannelMap::~DAQChannelMap ( )

Definition at line 61 of file DAQChannelMap.cpp.

61 { }
DAQChannelMap::DAQChannelMap ( )
protected

DAQChannelMap is a singleton - keep the constructor private.

Definition at line 57 of file DAQChannelMap.cpp.

57 { }

Member Function Documentation

virtual block_t daqchannelmap::DAQChannelMap::computeBlock ( lchan  logicalchan) const
pure virtual
virtual fiber_t daqchannelmap::DAQChannelMap::computeFiberInModule ( dchan  daqchan) const
pure virtual
virtual unsigned int daqchannelmap::DAQChannelMap::computeModule ( lchan  logicalchan) const
pure virtual
virtual plane_t daqchannelmap::DAQChannelMap::computePlaneInBlock ( lchan  logicalchan) const
pure virtual
dchan DAQChannelMap::encodeDChan ( int  detID,
diblock_t  diblock,
dcm_id_t  dcm,
feb_t  feb,
pixel_t  pixel 
) const

Encode DAQ format information into a single 32 bit identifier.

Parameters
detID- detector ID from NovaDAQConventions
diblock- diblock ID number. Starts from 1
dcm- DCM id within diblock, starts from 1
feb- FEB id within DCM, starts from 0
pixel- pixel id within FEB, starts from 0
Returns
32-bit encoded channel "DAQ" ID

Definition at line 65 of file DAQChannelMap.cpp.

References BITFIELDSET, febshutoff_auto::chan, daqchannelmap::MASK_DCMID, daqchannelmap::MASK_DCMPORT, daqchannelmap::MASK_DETECTOR, daqchannelmap::MASK_DIBLOCK, daqchannelmap::MASK_PIXELID, daqchannelmap::SHIFT_DCMID, daqchannelmap::SHIFT_DCMPORT, daqchannelmap::SHIFT_DETECTOR, daqchannelmap::SHIFT_DIBLOCK, and daqchannelmap::SHIFT_PIXELID.

Referenced by cmap::dataprov::CMap::AddException(), chaninfo::BadChanValidate::BadChansFromOM(), dprf::ChannelPlots::beginRun(), calib::PEResponse::beginRun(), chaninfo::FindSwappedChannels::beginSubRun(), calib::PCHitsList::CellHitToPCHit(), cmap::dataprov::CMap::computeBlock(), rsim::ReadoutSim::CreateRawDigits(), daqchannelmap::HardwareDisplay::DAQToPlaneInBlockModCell(), daqchannelmap::HardwareDisplay::DAQToPlaneModCell(), daqchannelmap::NearDetDAQChannelMap::encodeDChan(), daqchannelmap::FarDetDAQChannelMap::encodeDChan(), daqchannelmap::TestBeamDAQChannelMap::encodeDChan(), cmap::dataprov::CMap::encodeDChan(), cmap::dataprov::CMap::encodeLChan(), chaninfo::FindSwappedChannels::fill_hist_and_tree(), dqsf::DQSpillFlags::FillCountVars(), raw2daq::RawDigit2DAQHit::FillDAQHits(), mcdatadaq::DAQSimulator::fillMicroSlices(), cmap::dataprov::CMap::getCell(), calib::DriftResponseCalc::GetChanID(), evd::GeometryDrawer::GetDCMBoxes(), nova::dbi::RunHistory::GetFEB(), nova::dbi::RunHistory::GetGain(), mcdatadaq::DAQSimulator::getNanoSliceOrder(), calib::Calibrator::GetPECorrToGeVScale(), nova::dbi::RunHistory::GetPedestal(), nova::dbi::RunHistory::GetPixelGain(), nova::dbi::RunHistory::GetPixelGains(), cmap::dataprov::CMap::getPlane(), nova::dbi::RunHistory::GetThreshold(), calib::Calibrator::GetTimingOffset(), nova::dbi::RunHistory::HasAPD(), chaninfo::BadChanList::InDroppedDCM(), mcdatadaq::DAQSimulator::init(), chaninfo::BadChanList::IsBadUncached(), nova::dbi::RunHistory::IsCooled(), chaninfo::BadChanList::LoadNewData(), nova::dbi::RunHistory::LoadPedestals(), calib::Calibrator::MakeCellHit(), evtsum::EventSummary::MakeOutput(), chaninfo::BadChanList::NBadInSubRun(), daqchannelmap::HardwareDisplay::PlaneCellToDAQ(), daq2raw::OnlineUnpack::ProcessRawEvent_(), calib::ResizeDetector::produce(), rsim::ReadoutSim::produce(), nova::dbi::RunHistory::PullAPDInfoFromDB(), rawp::CheckDAQChannelMap::Reco(), DAQChannelMapTests::testBasicChannelGetOnline(), DAQChannelMapTests::testViewLookups(), and om::RawEventUnpacker::UnpackNanoSlice().

70 {
71  dchan chan = 0x0;
77  return chan;
78 }
diblock
print "ROW IS " print row
Definition: geo2elec.py:31
APD Pixel Number (8bit), valid range 0-31.
Detector ID, (4bit), valid range 1-4.
Diblock ID, (6bit), valid range 1-15.
DCM ID, (6bit), valid range 1-12.
#define BITFIELDSET(block, data, mask, shift)
Definition: BitFields.h:24
DCM Link Port (8bit), valid range 0-63.
uint32_t dchan
< DAQ Channel Map Package
virtual dchan daqchannelmap::DAQChannelMap::encodeDChan ( lchan  logicalchan) const
pure virtual
lchan DAQChannelMap::encodeLChan ( int  detId,
plane_t  plane,
cell_t  cell 
) const

Encode logical format information (physical detector coordinates) into a single 32 bit identifier.

Parameters
detID- detector ID from NovaDAQConventions
plane- global plane number, starts from 0 at south
cell- global cell number, starts from 0 at bottom
Returns
32-bit encoded channel "logical" ID

Definition at line 82 of file DAQChannelMap.cpp.

References BITFIELDSET, febshutoff_auto::chan, daqchannelmap::MASK_OFFLINE_CELL, daqchannelmap::MASK_OFFLINE_DETECTOR, daqchannelmap::MASK_OFFLINE_PLANE, daqchannelmap::SHIFT_OFFLINE_CELL, daqchannelmap::SHIFT_OFFLINE_DETECTOR, and daqchannelmap::SHIFT_OFFLINE_PLANE.

Referenced by cmap::dataprov::CMap::AddException(), align::AlignInspect::analyze(), dprf::ChannelPlots::analyze(), dprf::TrackPlots::analyze(), align::SplitTracks::analyze(), chaninfo::BadChanValidate::BadChansFromOM(), dprf::ChannelPlots::beginRun(), calib::PEResponse::beginRun(), chaninfo::FindSwappedChannels::beginSubRun(), slicer::Slicer::BlockSlice(), calib::PCHitsList::CellHitToPCHit(), rsim::ReadoutSim::CreateRawDigits(), daqchannelmap::HardwareDisplay::DAQToPlaneInBlockModCell(), daqchannelmap::HardwareDisplay::DAQToPlaneModCell(), daqchannelmap::NearDetDAQChannelMap::encodeLChan(), daqchannelmap::FarDetDAQChannelMap::encodeLChan(), daqchannelmap::TestBeamDAQChannelMap::encodeLChan(), cmap::dataprov::CMap::encodeLChan(), chaninfo::FindSwappedChannels::fill_hist_and_tree(), daq2raw::DAQHit2Raw::FillRawDigits(), cmap::dataprov::CMap::GetCell(), calib::DriftResponseCalc::GetChanID(), evd::GeometryDrawer::GetDCMBoxes(), nova::dbi::RunHistory::GetFEB(), nova::dbi::RunHistory::GetGain(), calib::Calibrator::GetPECorrToGeVScale(), nova::dbi::RunHistory::GetPedestal(), nova::dbi::RunHistory::GetPixelGain(), nova::dbi::RunHistory::GetPixelGains(), cmap::dataprov::CMap::GetPlane(), nova::dbi::RunHistory::GetThreshold(), calib::Calibrator::GetTimingOffset(), nova::dbi::RunHistory::HasAPD(), chaninfo::BadChanList::InDroppedDCM(), chaninfo::BadChanList::IsBadUncached(), nova::dbi::RunHistory::IsCooled(), chaninfo::BadChanList::LoadNewData(), nova::dbi::RunHistory::LoadPedestals(), calib::Calibrator::MakeCellHit(), evtsum::EventSummary::MakeOutput(), chaninfo::BadChanList::NBadInSubRun(), daqchannelmap::HardwareDisplay::PlaneCellToDAQ(), daq2raw::OnlineUnpack::ProcessRawEvent_(), rsim::ReadoutSim::produce(), lem::GenFromLib::readNext(), rawp::CheckDAQChannelMap::Reco(), DAQChannelMapTests::testBasicChannelGetOffline(), DAQChannelMapTests::testBasicOfflineChannelGet(), DAQChannelMapTests::testDiBlockLookupsOffline(), DAQChannelMapTests::testPlaneLookupsOffline(), DAQChannelMapTests::testViewLookups(), DAQChannelMapTests::testViewLookupsOffline(), and om::RawEventUnpacker::UnpackNanoSlice().

virtual lchan daqchannelmap::DAQChannelMap::encodeLChan ( dchan  daqchan) const
pure virtual
cell_t DAQChannelMap::getCell ( lchan  logicalchan) const

Decode the cell number from an lchan.

Definition at line 155 of file DAQChannelMap.cpp.

References BITFIELDGET, BOUNDSCHECK, febshutoff_auto::chan, daqchannelmap::ERROR_CELL_OUTRANGE, daqchannelmap::MASK_OFFLINE_CELL, daqchannelmap::NUM_CELLS, and daqchannelmap::SHIFT_OFFLINE_CELL.

Referenced by dprf::ChannelPlots::analyze(), comi::DataCheck::analyze(), chaninfo::BadChanValidate::BadChansFromOM(), dprf::ChannelPlots::beginRun(), calib::PEResponse::beginRun(), chaninfo::FindSwappedChannels::beginSubRun(), daqchannelmap::NearDetDAQChannelMap::computeModule(), daqchannelmap::TestBeamDAQChannelMap::computeModule(), daqchannelmap::FarDetDAQChannelMap::computeModule(), daqchannelmap::NDOSDAQChannelMap::computeModule(), daqchannelmap::HardwareDisplay::DAQToPlaneInBlockModCell(), daqchannelmap::HardwareDisplay::DAQToPlaneModCell(), daqchannelmap::NearDetDAQChannelMap::encodeDChan(), daqchannelmap::TestBeamDAQChannelMap::encodeDChan(), daqchannelmap::FarDetDAQChannelMap::encodeDChan(), chaninfo::FindSwappedChannels::fill_hist_and_tree(), cmap::dataprov::CMap::getCell(), cmap::dataprov::CMap::GetCell(), chaninfo::BadChanList::LoadNewData(), nova::dbi::RunHistory::LoadPedestals(), chaninfo::BadChanList::NBadInSubRun(), and om::RawEventUnpacker::UnpackNanoSlice().

156 {
158  0,
159  NUM_CELLS*
160  NUM_PLANES_DIBLOCK[getDetectorOffline(chan)]*
161  NUM_DIBLOCK_DET[getDetectorOffline(chan)],
163 }
#define BITFIELDGET(block, mask, shift)
Definition: BitFields.h:23
#define BOUNDSCHECK(value, min, max, err)
Definition: boundscheck.h:22
Cell Number, (10bit), valid range 1-384 (far det)
dcm_id_t DAQChannelMap::getDCM ( dchan  daqchan) const

Decode the dcm ID from a dchan.

Definition at line 115 of file DAQChannelMap.cpp.

References BITFIELDGET, BOUNDSCHECK, daqchannelmap::ERROR_DCM_OUTRANGE, daqchannelmap::MASK_DCMID, daqchannelmap::MAX_DCM, daqchannelmap::MIN_DCM, and daqchannelmap::SHIFT_DCMID.

Referenced by febstat::FEBShutoff::analyze(), dprf::TrackPlots::analyze(), febstat::EventFEBStatus::analyze(), comi::DataCheck::analyze(), comi::NearlineAna::analyze(), calib::DriftResponseCalc::beginRun(), calib::PCHitsList::CellHitToPCHit(), airshower::AirSlicer::CountActiveDCM(), chaninfo::BadChanList::CountDCMHits(), daqchannelmap::NearDetDAQChannelMap::encodeLChan(), daqchannelmap::FarDetDAQChannelMap::encodeLChan(), daqchannelmap::TestBeamDAQChannelMap::encodeLChan(), chaninfo::FindSwappedChannels::fill_hist_and_tree(), dqsf::DQSpillFlags::FillCountVars(), mcdatadaq::DAQSimulator::fillMicroSlices(), DataCheck::HardwareStatusCheck::filter(), calib::DriftResponseCalc::GetChanID(), cmap::dataprov::CMap::getDCM(), evd::GeometryDrawer::GetDCMBoxes(), nova::dbi::RunHistory::GetFEB(), calib::Calibrator::getFebType(), mcdatadaq::DAQSimulator::getNanoSliceOrder(), nova::dbi::RunHistory::GetPedestal(), nova::dbi::RunHistory::GetThreshold(), calib::Calibrator::GetTimingOffset(), daqchannelmap::NearDetDAQChannelMap::getView(), daqchannelmap::FarDetDAQChannelMap::getView(), daqchannelmap::TestBeamDAQChannelMap::getView(), nova::dbi::RunHistory::HasAPD(), chaninfo::BadChanList::InDroppedDCM(), chaninfo::BadChanList::IsBadUncached(), nova::dbi::RunHistory::IsCooled(), chaninfo::BadChanList::LoadNewData(), calib::Calibrator::MakeCellHit(), evtsum::EventSummary::MakeOutput(), daqchannelmap::HardwareDisplay::PlaneCellToDAQ(), mcdatadaq::DAQSimulator::print(), daq2raw::OnlineUnpack::ProcessRawEvent_(), MergeTBDaqCollections::MergeTBDaqCollections::produce(), and calib::DriftCorrection::respondToCloseOutputFiles().

116 {
118  MIN_DCM,
119  MAX_DCM,
121 }
#define BITFIELDGET(block, mask, shift)
Definition: BitFields.h:23
DCM ID, (6bit), valid range 1-12.
#define BOUNDSCHECK(value, min, max, err)
Definition: boundscheck.h:22
int DAQChannelMap::getDetector ( uint32_t  anychan) const

Return the detector type given either a dchan or an lchan identifier - in this case the decoding is the same

Definition at line 95 of file DAQChannelMap.cpp.

References BITFIELDGET, BOUNDSCHECK, daqchannelmap::ERROR_UNKNOWN_DET, novadaq::cnv::kNDetector, novadaq::cnv::kUNKNOWN_DET, daqchannelmap::MASK_DETECTOR, and daqchannelmap::SHIFT_DETECTOR.

Referenced by daqchannelmap::NearDetDAQChannelMap::encodeDChan(), daqchannelmap::TestBeamDAQChannelMap::encodeDChan(), daqchannelmap::FarDetDAQChannelMap::encodeDChan(), daqchannelmap::NearDetDAQChannelMap::encodeLChan(), daqchannelmap::TestBeamDAQChannelMap::encodeLChan(), daqchannelmap::FarDetDAQChannelMap::encodeLChan(), cmap::dataprov::CMap::getDetector(), getPlane(), daq2raw::OnlineUnpack::ProcessRawEvent_(), calib::DriftCorrection::respondToCloseOutputFiles(), DAQChannelMapTests::testBasicChannelGetOnline(), DAQChannelMapTests::testBasicOfflineChannelGet(), and DAQChannelMapTests::testViewLookups().

diblock_t DAQChannelMap::getDiBlock ( dchan  daqchan) const

Decode the diblock ID from a dchan.

Definition at line 105 of file DAQChannelMap.cpp.

References BITFIELDGET, BOUNDSCHECK, daqchannelmap::ERROR_DIBLOCK_OUTRANGE, daqchannelmap::MASK_DIBLOCK, daqchannelmap::MAX_DIBLOCK, daqchannelmap::MIN_DIBLOCK, and daqchannelmap::SHIFT_DIBLOCK.

Referenced by dprf::TrackPlots::analyze(), comi::DataCheck::analyze(), comi::NearlineAna::analyze(), calib::DriftResponseCalc::beginRun(), calib::PCHitsList::CellHitToPCHit(), airshower::AirSlicer::CountActiveDCM(), chaninfo::BadChanList::CountDCMHits(), novaddt::ContainedSlice::defineContainmentRegion(), daqchannelmap::NearDetDAQChannelMap::encodeLChan(), daqchannelmap::FarDetDAQChannelMap::encodeLChan(), daqchannelmap::TestBeamDAQChannelMap::encodeLChan(), chaninfo::FindSwappedChannels::fill_hist_and_tree(), dqsf::DQSpillFlags::FillCountVars(), mcdatadaq::DAQSimulator::fillMicroSlices(), DataCheck::HardwareStatusCheck::filter(), calib::DriftResponseCalc::GetChanID(), evd::GeometryDrawer::GetDCMBoxes(), cmap::dataprov::CMap::getDiBlock(), daqchannelmap::NearDetDAQChannelMap::getDiBlockType(), nova::dbi::RunHistory::GetFEB(), mcdatadaq::DAQSimulator::getNanoSliceOrder(), calib::Calibrator::GetPECorrToGeVScale(), nova::dbi::RunHistory::GetPedestal(), nova::dbi::RunHistory::GetThreshold(), calib::Calibrator::GetTimingOffset(), daqchannelmap::NearDetDAQChannelMap::getView(), nova::dbi::RunHistory::HasAPD(), chaninfo::BadChanList::InDroppedDCM(), chaninfo::BadChanList::IsBadUncached(), nova::dbi::RunHistory::IsCooled(), chaninfo::BadChanList::LoadNewData(), calib::Calibrator::MakeCellHit(), evtsum::EventSummary::MakeOutput(), daqchannelmap::HardwareDisplay::PlaneCellToDAQ(), mcdatadaq::DAQSimulator::print(), daq2raw::OnlineUnpack::ProcessRawEvent_(), calib::ResizeDetector::produce(), calib::DriftCorrection::respondToCloseOutputFiles(), DAQChannelMapTests::testBasicChannelGetOnline(), and DAQChannelMapTests::testViewLookups().

virtual DiBlock_TYPE daqchannelmap::DAQChannelMap::getDiBlockType ( dchan  chan) const
pure virtual
feb_t DAQChannelMap::getFEB ( dchan  daqchan) const

Decode the feb id from a dchan.

Definition at line 125 of file DAQChannelMap.cpp.

References BITFIELDGET, BOUNDSCHECK, daqchannelmap::ERROR_PORT_OUTRANGE, daqchannelmap::MASK_DCMPORT, daqchannelmap::MAX_PORT, daqchannelmap::MIN_PORT, and daqchannelmap::SHIFT_DCMPORT.

Referenced by febstat::FEBShutoff::analyze(), febstat::EventFEBStatus::analyze(), comi::DataCheck::analyze(), calib::PCHitsList::CellHitToPCHit(), daqchannelmap::NearDetDAQChannelMap::encodeLChan(), daqchannelmap::FarDetDAQChannelMap::encodeLChan(), daqchannelmap::TestBeamDAQChannelMap::encodeLChan(), chaninfo::FindSwappedChannels::fill_hist_and_tree(), dqsf::DQSpillFlags::FillCountVars(), mcdatadaq::DCMSimulator::generateNanoSlice(), calib::DriftResponseCalc::GetChanID(), cmap::dataprov::CMap::getFEB(), nova::dbi::RunHistory::GetFEB(), mcdatadaq::DAQSimulator::getNanoSliceOrder(), nova::dbi::RunHistory::GetPedestal(), nova::dbi::RunHistory::GetThreshold(), daqchannelmap::TestBeamDAQChannelMap::getView(), nova::dbi::RunHistory::HasAPD(), chaninfo::BadChanList::IsBadUncached(), nova::dbi::RunHistory::IsCooled(), chaninfo::BadChanList::LoadNewData(), daqchannelmap::HardwareDisplay::PlaneCellToDAQ(), mcdatadaq::DAQSimulator::print(), daq2raw::OnlineUnpack::ProcessRawEvent_(), and calib::DriftCorrection::respondToCloseOutputFiles().

126 {
128  MIN_PORT,
129  MAX_PORT,
131 }
#define BITFIELDGET(block, mask, shift)
Definition: BitFields.h:23
#define BOUNDSCHECK(value, min, max, err)
Definition: boundscheck.h:22
DCM Link Port (8bit), valid range 0-63.
DAQChannelMap * DAQChannelMap::getInstance ( int  detID)
static

Definition at line 16 of file DAQChannelMap.cpp.

References om::cerr, allTimeWatchdog::endl, novadaq::cnv::kFARDET, novadaq::cnv::kNDOS, novadaq::cnv::kNEARDET, and novadaq::cnv::kTESTBEAM.

Referenced by chaninfo::BadChanValidate::BadChansFromOM(), calib::PEResponse::beginRun(), chaninfo::BadChanList::CountDCMHits(), daqchannelmap::HardwareDisplay::DAQToPlaneInBlockModCell(), daqchannelmap::HardwareDisplay::DAQToPlaneModCell(), novaddt::ContainedSlice::defineContainmentRegion(), calib::DCMTimingOffset::endJob(), chaninfo::FindSwappedChannels::filter(), nova::dbi::RunHistory::GetFEB(), nova::dbi::RunHistory::GetGain(), nova::dbi::RunHistory::GetPedestal(), nova::dbi::RunHistory::GetPixelGain(), nova::dbi::RunHistory::GetPixelGains(), nova::dbi::RunHistory::GetThreshold(), nova::dbi::RunHistory::HasAPD(), chaninfo::BadChanList::InDroppedDCM(), chaninfo::BadChanList::IsBadUncached(), nova::dbi::RunHistory::IsCooled(), chaninfo::BadChanList::LoadNewData(), nova::dbi::RunHistory::LoadPedestals(), chaninfo::BadChanList::NBadInSubRun(), daqchannelmap::HardwareDisplay::PlaneCellToDAQ(), cmap::CMap::postBeginRun(), novaddt::OnlineUnpack::ProcessRawEvent_(), daq2raw::OnlineUnpack::ProcessRawEvent_(), NovaDDTHitProducer::produce(), calib::ResizeDetector::produce(), calib::TimingCalibration::produce(), calib::PCHitsList::produce(), nova::dbi::RunHistory::PullAPDInfoFromDB(), DAQChannelMapTests::testBasicChannelGetOffline(), DAQChannelMapTests::testBasicChannelGetOnline(), DAQChannelMapTests::testBasicOfflineChannelGet(), DAQChannelMapTests::testDiBlockLookups(), DAQChannelMapTests::testDiBlockLookupsOffline(), DAQChannelMapTests::testPlaneLookupsOffline(), DAQChannelMapTests::testViewLookups(), DAQChannelMapTests::testViewLookupsOffline(), and om::RawEventUnpacker::UnpackNanoSlice().

17 {
18  static FarDetDAQChannelMap* FarDetInst = 0;
19  static NearDetDAQChannelMap* NearDetInst = 0;
20  static NDOSDAQChannelMap* NDOSInst = 0;
21  static TestBeamDAQChannelMap* TestBeamInst = 0;
22 
23  switch(detID) {
25  if (NearDetInst) { delete NearDetInst; NearDetInst = 0; }
26  if (NDOSInst) { delete NDOSInst; NDOSInst = 0; }
27  if (TestBeamInst){ delete TestBeamInst;TestBeamInst= 0; }
28  if (FarDetInst==0) FarDetInst = new FarDetDAQChannelMap();
29  return FarDetInst;
31  if (FarDetInst) { delete FarDetInst; FarDetInst = 0; }
32  if (NDOSInst) { delete NDOSInst; NDOSInst = 0; }
33  if (TestBeamInst){ delete TestBeamInst;TestBeamInst= 0; }
34  if (NearDetInst==0) NearDetInst = new NearDetDAQChannelMap();
35  return NearDetInst;
36  case novadaq::cnv::kNDOS :
37  if (FarDetInst) { delete FarDetInst; FarDetInst = 0; }
38  if (NearDetInst) { delete NearDetInst; NearDetInst = 0; }
39  if (TestBeamInst){ delete TestBeamInst;TestBeamInst= 0; }
40  if (NDOSInst==0) NDOSInst = new NDOSDAQChannelMap();
41  return NDOSInst;
43  if (FarDetInst) { delete FarDetInst; FarDetInst = 0; }
44  if (NearDetInst) { delete NearDetInst; NearDetInst = 0; }
45  if (NDOSInst) { delete NDOSInst; NDOSInst = 0; }
46  if (TestBeamInst==0) TestBeamInst = new TestBeamDAQChannelMap();
47  return TestBeamInst;
48  default:
49  std::cerr<<" No valid detector specified!!!!!"<<std::endl;
50  abort();
51  }
52  return 0;
53 }
OStream cerr
Definition: OStream.cxx:7
Far Detector at Ash River, MN.
Prototype Near Detector on the surface at FNAL.
Near Detector in the NuMI cavern.
virtual unsigned int daqchannelmap::DAQChannelMap::getNumberOfDCM ( DiBlock_TYPE  dbt) const
pure virtual
pixel_t DAQChannelMap::getPixel ( dchan  daqchan) const

Decode the pixel id from a dchan.

Definition at line 135 of file DAQChannelMap.cpp.

References BITFIELDGET, BOUNDSCHECK, daqchannelmap::ERROR_PIXEL_OUTRANGE, daqchannelmap::MASK_PIXELID, daqchannelmap::MAX_PIXEL, daqchannelmap::MIN_PIXEL, and daqchannelmap::SHIFT_PIXELID.

Referenced by febstat::FEBShutoff::analyze(), calib::PCHitsList::CellHitToPCHit(), daqchannelmap::NearDetDAQChannelMap::computeFiberInModule(), daqchannelmap::TestBeamDAQChannelMap::computeFiberInModule(), daqchannelmap::FarDetDAQChannelMap::computeFiberInModule(), rsim::ReadoutSim::CreateRawDigits(), daqchannelmap::NearDetDAQChannelMap::encodeLChan(), daqchannelmap::FarDetDAQChannelMap::encodeLChan(), daqchannelmap::TestBeamDAQChannelMap::encodeLChan(), chaninfo::FindSwappedChannels::fill_hist_and_tree(), dprf::ChannelPlots::FillFebRawPlots(), mcdatadaq::DCMSimulator::generateNanoSlice(), mcdatadaq::DAQSimulator::getNanoSliceOrder(), nova::dbi::RunHistory::GetPedestal(), cmap::dataprov::CMap::getPixel(), nova::dbi::RunHistory::GetPixelGain(), nova::dbi::RunHistory::GetThreshold(), daqchannelmap::HardwareDisplay::PlaneCellToDAQ(), mcdatadaq::DAQSimulator::print(), daq2raw::OnlineUnpack::ProcessRawEvent_(), rsim::ReadoutSim::produce(), and DAQChannelMapTests::testBasicChannelGetOnline().

136 {
138  MIN_PIXEL,
139  MAX_PIXEL,
141 }
APD Pixel Number (8bit), valid range 0-31.
#define BITFIELDGET(block, mask, shift)
Definition: BitFields.h:23
#define BOUNDSCHECK(value, min, max, err)
Definition: boundscheck.h:22
plane_t DAQChannelMap::getPlane ( lchan  logicalchan) const

Decode the plane number from an lchan.

Definition at line 145 of file DAQChannelMap.cpp.

References BITFIELDGET, BOUNDSCHECK, febshutoff_auto::chan, daqchannelmap::ERROR_PLANE_OUTRANGE, getDetector(), daqchannelmap::MASK_OFFLINE_PLANE, and daqchannelmap::SHIFT_OFFLINE_PLANE.

Referenced by dprf::ChannelPlots::analyze(), dprf::TrackPlots::analyze(), comi::DataCheck::analyze(), chaninfo::BadChanValidate::BadChansFromOM(), dprf::ChannelPlots::beginRun(), calib::PEResponse::beginRun(), chaninfo::FindSwappedChannels::beginSubRun(), daqchannelmap::NearDetDAQChannelMap::computeBlock(), daqchannelmap::TestBeamDAQChannelMap::computeBlock(), daqchannelmap::FarDetDAQChannelMap::computeBlock(), daqchannelmap::NearDetDAQChannelMap::computePlaneInBlock(), daqchannelmap::TestBeamDAQChannelMap::computePlaneInBlock(), daqchannelmap::FarDetDAQChannelMap::computePlaneInBlock(), daqchannelmap::HardwareDisplay::DAQToPlaneModCell(), daqchannelmap::NearDetDAQChannelMap::encodeDChan(), daqchannelmap::TestBeamDAQChannelMap::encodeDChan(), daqchannelmap::FarDetDAQChannelMap::encodeDChan(), chaninfo::FindSwappedChannels::fill_hist_and_tree(), cmap::dataprov::CMap::getPlane(), cmap::dataprov::CMap::GetPlane(), chaninfo::BadChanList::LoadNewData(), nova::dbi::RunHistory::LoadPedestals(), chaninfo::BadChanList::NBadInSubRun(), calib::ResizeDetector::produce(), and om::RawEventUnpacker::UnpackNanoSlice().

146 {
148  0,
149  NUM_PLANES_DIBLOCK[getDetector(chan)]*
150  NUM_DIBLOCK_DET[getDetector(chan)], ERROR_PLANE_OUTRANGE);
151 }
int getDetector(uint32_t anychan) const
Plane Number,(18bit), valid range 0-930 (far det)
#define BITFIELDGET(block, mask, shift)
Definition: BitFields.h:23
#define BOUNDSCHECK(value, min, max, err)
Definition: boundscheck.h:22
virtual unsigned int daqchannelmap::DAQChannelMap::getTotalNumberOfDiblocks ( ) const
pure virtual
virtual DetView_TYPE daqchannelmap::DAQChannelMap::getView ( dchan  daqchan) const
pure virtual

The documentation for this class was generated from the following files: