Skip to content
Snippets Groups Projects
THcHallCSpectrometer.cxx 34.4 KiB
Newer Older
Int_t THcHallCSpectrometer::Decode( const THaEvData& evdata )
{

  fPresent=kTRUE;
  if(eventtypes.size()!=0) {
    Int_t evtype = evdata.GetEvType();
    if(!IsMyEvent(evtype)) {
      fPresent = kFALSE;
    }
  }

  return THaSpectrometer::Decode(evdata);
}

//_____________________________________________________________________________
Int_t THcHallCSpectrometer::ReadRunDatabase( const TDatime& date )
{
  // Override THaSpectrometer with nop method.  All needed kinamatics
  // read in ReadDatabase.
void THcHallCSpectrometer::AddEvtType(int evtype) {
  eventtypes.push_back(evtype);
}
  
void THcHallCSpectrometer::SetEvtType(int evtype) {
  eventtypes.clear();
  AddEvtType(evtype);
}

Bool_t THcHallCSpectrometer::IsMyEvent(Int_t evtype) const
{
  for (UInt_t i=0; i < eventtypes.size(); i++) {
    if (evtype == eventtypes[i]) return kTRUE;
  }

  return kFALSE;
}

//_____________________________________________________________________________
ClassImp(THcHallCSpectrometer)