Line Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78
// -*- C++ -*-
//
// Package:     RPCObjects
// Class  :     L1RPCHwConfig
//
// Implementation:
//     <Notes on implementation>
//
// Original Author:
//         Created:  Wed Apr  9 13:48:10 CEST 2008
// $Id$
//

// system include files

// user include files
#include "CondFormats/RPCObjects/interface/L1RPCHwConfig.h"

#include <iostream>
//
// constants, enums and typedefs
//

//
// static data member definitions
//

//
// constructors and destructor
//
L1RPCHwConfig::L1RPCHwConfig() {}

// L1RPCHwConfig::L1RPCHwConfig(const L1RPCHwConfig& rhs)
// {
//    // do actual copying here;
// }

L1RPCHwConfig::~L1RPCHwConfig() {}

void L1RPCHwConfig::enablePAC(int tower, int sector, int segment, bool enable) {
  if (enable) {
    //  std::cout << "+";
    m_disabledDevices.erase(L1RPCDevCoords(tower, sector, segment));
  } else {
    // std::cout << "-";
    m_disabledDevices.insert(L1RPCDevCoords(tower, sector, segment));
  }
}

void L1RPCHwConfig::enableTower(int tower, bool enable) {
  for (int sec = 0; sec < 12; ++sec) {
    for (int seg = 0; seg < 12; ++seg) {
      enablePAC(tower, sec, seg, enable);
    }
  }
}

void L1RPCHwConfig::enableTowerInCrate(int tower, int crate, bool enable) {
  for (int seg = 0; seg < 12; ++seg) {
    enablePAC(tower, crate, seg, enable);
  }
}

void L1RPCHwConfig::enableCrate(int crate, bool enable) {
  for (int tower = -16; tower < 17; ++tower) {
    for (int seg = 0; seg < 12; ++seg) {
      enablePAC(tower, crate, seg, enable);
    }
  }
}

void L1RPCHwConfig::enableAll(bool enable) {
  for (int seg = 0; seg < 12; ++seg) {
    //     std::cout <<  seg << " ";
    enableCrate(seg, enable);
    //     std::cout << std::endl;
  }
}