//* $Id: // ------------------------------------------------------------------------- // ----- CbmStsDigi source file ----- // ----- Created 28/08/06 by V. Friese ----- // ------------------------------------------------------------------------- #include "CbmStsDigi.h" // ----- Default constructor ------------------------------------------- CbmStsDigi::CbmStsDigi() { fDetectorId = 0; fChannelNr = 0; } // ------------------------------------------------------------------------- // ----- Standard constructor ------------------------------------------ CbmStsDigi::CbmStsDigi(Int_t iStation, Int_t iSector, Int_t iSide, Int_t iChannel) { // Check range for station, sector and side if ( ! ( iStation >= 0 && iStation <= 255 ) ) { cout << "-E- CbmStsDigi: Illegal station number " << iStation << endl; Fatal("", "Illegal station number"); } if ( ! ( iSector >= 0 && iSector <= 32767 ) ) { cout << "-E- CbmStsDigi: Illegal sector number " << iSector << endl; Fatal("", "Illegal sector number"); } if ( ! ( iSide >= 0 && iSide <= 1 ) ) { cout << "-E- CbmStsDigi: Illegal side number " << iSide << endl; Fatal("", "Illegal side number"); } fDetectorId = iSide; // side on bit 0 fDetectorId |= (iSector << 1); // sector nr. on bits 1-15 fDetectorId |= (iStation << 16); // station nr. on bits 16-23 fDetectorId |= 2 << 24; // system ID on bits 24-27 fChannelNr = iChannel; } // ------------------------------------------------------------------------- // ----- Destructor ---------------------------------------------------- CbmStsDigi::~CbmStsDigi() { } // ------------------------------------------------------------------------- ClassImp(CbmStsDigi)