CTPPSPixelAnalysisMask

CTPPSPixelROCAnalysisMask

Macros

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
/****************************************************************************
 *
 * Author: F.Ferro ferro@ge.infn.it
 *
 ****************************************************************************/

#ifndef CondFormats_PPSObjects_CTPPSPixelAnalysisMask
#define CondFormats_PPSObjects_CTPPSPixelAnalysisMask

#include <set>
#include <map>

#include "CondFormats/Serialization/interface/Serializable.h"
#include "CondFormats/PPSObjects/interface/CTPPSPixelIndices.h"

/**
 *\brief Contains data on masked channels of a ROC
 */
class CTPPSPixelROCAnalysisMask {
public:
  CTPPSPixelROCAnalysisMask() : fullMask(false) {}

  /// whether all channels of the ROC shall be masked
  bool fullMask;

  /// list of channels to be masked
  std::set<std::pair<unsigned char, unsigned char> > maskedPixels;

  COND_SERIALIZABLE;
};

/**
 *\brief Channel-mask mapping.
 **/
class CTPPSPixelAnalysisMask {
public:
  std::map<uint32_t, CTPPSPixelROCAnalysisMask> analysisMask;

  void insert(const uint32_t &sid, const CTPPSPixelROCAnalysisMask &am);

  COND_SERIALIZABLE;
};

#endif